Python 元组知识大全

  • 2020 年 2 月 13 日
  • 筆記

Python的元组与列表类似,不同之处在于元组的元素不能修改。

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

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

如下实例:

tup_1 = ('Bob', 'Jion', 1998, 2019)  tup_2 = (1, 2, 3, 4, 5 )  tup_3 = "a", "b", "c", "d"

创建空元组

tup1_ = ();

元组中只包含一个元素时,需要在元素后面添加逗号

tup1_ = (10,);

元组与字符串类似,下标索引从0开始,可以进行截取,组合等。

查询元组

元组可以使用下标索引来访问元组中的值,如下实例:

tup_1 = ('Bob', 'Jion', 1998, 2019)  tup_2 = (1, 2, 3, 4, 5, 6, 7 )    print(tup_1[0])  print(tup_2[1:5])  # 输出  Bob  (2, 3, 4, 5)

修改元素

元组中的元素值是不允许修改的,但我们可以对元组进行连接组合

如下实例:

tup1 = (12, 34.56)  tup2 = ('abc', 'xyz')    # 以下修改元组元素操作是非法的。  # tup1[0] = 100;    # 创建一个新的元组  tup3 = tup1 + tup2  print (tup3)  # 输出  (12, 34.56, 'abc', 'xyz')

删除元组:

元组中的元素值是不允许删除的,但我们可以使用del语句来删除整个元组,

如下实例:

tup = ('Bob', 'Jion', 1998, 2019)    print (tup)  del tup;  print (======)  print (tup)  # 输出  ('Bob', 'Jion', 1998, 2019)  ======  Traceback (most recent call last):    File "test.py", line 9, in <module>      print tup;  NameError: name 'tup' is not defined

以上实例元组被删除后,输出变量会有异常信

元组运算符

与字符串一样,元组之间可以使用 + 号和 * 号进行运算。这就意味着他可以

组合和复制,运算后会生成一个新的元组。

Python 表达式

结果

描述

len((1, 2, 3,4,5))

5

计算元素个数

(1, 2, 3) + (4, 5, 6)

(1, 2, 3, 4, 5, 6)

连接

['Hello!'] * 3

['Hello!', 'Hello!', Hello']

复制

4 in (1, 2, 3,4)

True

元素是否存在

for x in (1, 2, 3,4,5): print x,

1 2 3 4 5

遍历

元组索引,截取

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

元组:

L = ('abc', 'def', 'ghi')

Python 表达式

结果

描述

L[2]

'ghi!'

读取第三个元素

L[-2]

'def'

反向读取;读取倒数第二个元素

L[1:]

('def', 'ghi')

截取元素

无关闭分隔符

任意无符号的对象,以逗号隔开,默认为元组,如下实例:

print ('abc', -4.24e93, 18+6.6j, 'xyz')  x, y = 1, 2  print (x,y)  # 输出  abc -4.24e+93 (18+6.6j) xyz  1 2                     

元组内置函数

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

count(obj)统计某个元素在列表中出现的次数  a_tup = (1,2.3,4,5,6,2,4)a_tup.count(4)# 输出2

封包解包

封包:程序把多个值赋值给一个变量时Python会自动将多值封装成元组

解包:程序允许将序列(元组或列表)直接赋值给多个变量,此时序列里的各个元素会被依次赋值给每个变量(要求序列的元素和变量个数相等)

# 将10,20,30依次赋值给 x,y,z  x, y,z = 10, 20, 30  print(x,y,z)  # 输出  10,20,30  # 执行过程如下  xyz = 10,20,30  # 先执行序列封包  x, y, z = xyz # 在执行序列解包

end