https://www.runoob.com/python3/python3-tuple.html

元组使用小括号,列表使用方括号。

元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。

Python 的元组与列表类似,不同之处在于元组的元素不能修改。当元素是对象时(比如List),那么对象的引用不可以被修改,但是里面的值可以被修改。

 例如:

tp=(1,2,[c,d])   

tp[2][0]=a    这时就将c改成a了,这是允许的。

>>>tup1 = ('Google', 'Runoob', , );
>>> tup2 = (, , , , );
>>> tup3 = "a", "b", "c", "d"; # 不需要括号也可以
>>> type(tup3)
<class 'tuple'>

创建空元组

tup1 = ();
元组中只包含一个元素时,需要在元素后面添加逗号,否则括号会被当作运算符使用:

实例(Python 3.0+)
>>>tup1 = ()
>>> type(tup1) # 不加逗号,类型为整型
<class 'int'> >>> tup1 = (,)
>>> type(tup1) # 加上逗号,类型为元组
<class 'tuple'>

访问:

tup1 = ('Google', 'Runoob', , )
tup2 = (, , , , , , ) print ("tup1[0]: ", tup1[])
print ("tup2[1:5]: ", tup2[:])

删除

tup = ('Google', 'Runoob', , )

print (tup)
del tup;
print ("删除后的元组 tup : ")
print (tup) 删除后的元组 tup :
Traceback (most recent call last):
File "test.py", line , in <module>
print (tup)
NameError: name 'tup' is not defined

元组运算符

与字符串一样,元组之间可以使用 + 号和 * 号进行运算。这就意味着他们可以组合和复制,运算后会生成一个新的元组。

Python 表达式 结果 描述
len((1, 2, 3)) 3 计算元素个数
(1, 2, 3) + (4, 5, 6) (1, 2, 3, 4, 5, 6) 连接
('Hi!',) * 4 ('Hi!', 'Hi!', 'Hi!', 'Hi!') 复制
3 in (1, 2, 3) True 元素是否存在
for x in (1, 2, 3): print (x,) 1 2 3 迭代

元组索引,截取

因为元组也是一个序列,所以我们可以访问元组中的指定位置的元素,也可以截取索引中的一段元素,如下所示:

元组:

L = ('Google', 'Taobao', 'Runoob')
Python 表达式 结果 描述
L[2] 'Runoob' 读取第三个元素
L[-2] 'Taobao' 反向读取;读取倒数第二个元素
L[1:] ('Taobao', 'Runoob') 截取元素,从第二个开始后的所有元素。

运行实例如下:

>>> L = ('Google', 'Taobao', 'Runoob')
>>> L[2]
'Runoob'
>>> L[-2]
'Taobao'
>>> L[1:]
('Taobao', 'Runoob')

元组内置函数

Python元组包含了以下内置函数

序号 方法及描述 实例
1 len(tuple)
计算元组元素个数。
>>> tuple1 = ('Google', 'Runoob', 'Taobao')
>>> len(tuple1)
3
>>>
2 max(tuple)
返回元组中元素最大值。
>>> tuple2 = ('5', '4', '8')
>>> max(tuple2)
'8'
>>>
3 min(tuple)
返回元组中元素最小值。
>>> tuple2 = ('5', '4', '8')
>>> min(tuple2)
'4'
>>>
4 tuple(seq)
将列表转换为元组。
>>> list1= ['Google', 'Taobao', 'Runoob', 'Baidu']
>>> tuple1=tuple(list1)
>>> tuple1
('Google', 'Taobao', 'Runoob', 'Baidu')

最新文章

  1. [蓝牙] 2、蓝牙BLE协议及架构浅析&amp;&amp;基于广播超时待机说广播事件
  2. Bmob开发指南【android端】
  3. ORACLE十进制与十六进制的转换
  4. 51nod 1392 装盒子
  5. Java生成唯一的ID
  6. SVN检出资源文件
  7. Unity3D之Mecanim动画系统学习笔记(二):模型导入
  8. 关于Oracle将小于1的数字to_char后丢掉0的解决办法
  9. 100M 宽带办理
  10. List toArrays()
  11. UEP-时间的比较
  12. 【算法】【python实现】二叉搜索树插入、删除、查找
  13. STM32应用实例十一:基于SPI和AD7192的数据采集
  14. (转)内核模块操作命令-lsmod+rmmod+modinfo+modprobe
  15. AJAX通过HTML请求C#一般处理程序
  16. (原)luarocks install 提示 failed fetching manifest
  17. 吴裕雄 实战PYTHON编程(9)
  18. SoundPool在使用
  19. [BZOJ4408&amp;&amp;BZOJ4299][FJOI2016 &amp;&amp; Codechef]神秘数&amp;&amp;FRBSUM(主席树)
  20. Dubbo源代码实现三:注册中心Registry

热门文章

  1. 解决idea无法显示中文候选框问题
  2. Mac安装ipython与jupyter
  3. servlet3.0以后可以不用web.xml配置了
  4. SQLite 数据类型与C#数据类型对应表
  5. java自定义classloader引发的思考
  6. 浏览器端-3WSchool-JavaScript:JavaScript Boolean 对象
  7. Jmeter(三)关联数组
  8. wpf prism4 出现问题:无法加载一个或多个请求的类型。有关更多信息,请检索 LoaderExceptions 属性。
  9. Python线程和协程
  10. unity快捷放置物体操作