Python基础(4)——元组的定义和操作

元组是Python的基本数据类型,在下面这篇文章中,我将简单介绍一下元组的定义,常见的操作。

1. 元组的定义

  • Python的元组与列表类似,不同之处在于元组的元素不能修改。
  • 在python中,元组使用小括号,列表使用方括号。
  • 元组创建很简单,只需要在小括号中添加元素,并使用逗号隔开即可。
  • 元组与字符串类似,下标索引从0开始,可以进行截取,组合等。
  • 元组的格式为:元组名 = (元素1,元素2,元素3...)

如下实例:

tup= ('physics', 'chemistry', 1997, 2000,3.14) 

创建一个空元组:

tup = () 或 tup=tuple()

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

tup= (50,)

2. 元组的常见操作

2.1 > 访问元组中的元素:

访问元组中的元素,可以使用下标索引来进行访问

tup= ('physics', 'chemistry', 1997, 2000,3.14)
#访问元组的第一个元素
print(tup[0])
#访问元组的最后一个元素
print(tup[-1])
#访问元组索引为1,2,3的元素
print(tup[1:4])



结果如下:
physics
3.14
('chemistry', 1997, 2000)

2.2 > 修改元组中的元素:

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

tup1= ('physics', 'chemistry', 1997, 2000,3.14)
tup2=('physics', 'chemistry', 1997, 2000,3.14)
#元组可以进行组合
tup3=tup1+tup2
print(tup3)
#元组不可以进行更改
tup1[0]=666
print(tup1)


结果如下:
('physics', 'chemistry', 1997, 2000, 3.14, 'physics', 'chemistry', 1997, 2000, 3.14)
    tup1[0]=666
TypeError: 'tuple' object does not support item assignment

2.3 > 删除元组中的元素:

元组中的元素值是不允许删除的,但是可以使用del语句来删除整个元组,使用del删除整个元组后,再打印就会报错,因为元组此时没有定义。

 

tup= ('physics', 'chemistry', 1997, 2000,3.14)
print(tup)
del tup
print(tup)


结果如下:
('physics', 'chemistry', 1997, 2000, 3.14)
Traceback (most recent call last):
  File "D:/python_code/St11/test/liebiao.py", line 4, in <module>
    print(tup)
NameError: name 'tup' is not defined

3. 元组的常用操作符

  • len()可以求取元组的长度 
  • + 号用于组合元组,* 号用于重复元组
  • in,not in判断元素是否在元组中
  • for x in (1, 2, 3): print x 元组的遍历
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 遍历

4. 元组与列表的转化

元组----->列表:my_list=list(元组名)

扫描二维码关注公众号,回复: 4790220 查看本文章

列表----->元组:my_tuple=tuple(列表名)

my_tuple= ('physics', 'chemistry', 1997, 2000,3.14)
#打印此元组
print(my_tuple)
my_list=list(my_tuple)
#将元组转化为列表
print(my_list)
my_tuple=tuple(my_list)
#将列表转化为元组
print(my_tuple)



结果如下:
('physics', 'chemistry', 1997, 2000, 3.14)
['physics', 'chemistry', 1997, 2000, 3.14]
('physics', 'chemistry', 1997, 2000, 3.14)

猜你喜欢

转载自blog.csdn.net/qq_38684504/article/details/85843390