python元组
元组的作用
元组与列表类似,也是可以存多个任意类型的元素。不同之处在于元组的元素不能修改,即元组相当于不可变的列表,用于记录多个固定不允许修改的值,单纯用于取
在()内用逗号分隔开多个任意类型的值
>>> filed =("云南","贵州","西藏") # 本质:filed =("云南","贵州","西藏")
# >>> filed
('云南', '贵州', '西藏')
>>> type(filed)
<class 'tuple'>
强调:如果元组内只有一个值,则必须加一个逗号,否则()就只是包含的意思而非定义元组
>> > filed = ("云南")
>> > filed
'云南'
>> > filed = ("云南",)
>> > filed
('云南',)
>> > filed = ("云南")
>> > type(filed)
<class 'str'>
>> > filed = ("云南",)
>> > type(filed)
<class 'tuple'>
类型转换
> 但凡能被for循环的遍历的数据类型都可以传给tuple()转换成元组类型
>>> tuple('123')
('1', '2', '3')
>>> tuple([1,2])
(1, 2)
>>> tuple({'2','3','1'})
('3', '1', '2')
>>> tuple({'dls':'123'})
('dls',)
>>> tuple(('dls'))
('d', 'l', 's')
>>>
tuple()会跟for循环一样遍历出数据类型中包含的每一个元素然后放到元组中
使用
>>> tuple1=(1,'hhaha',1500.00,11,12,13)
# 1、按索引取值(正向取+反向取):只能取,不能改否则报错!
>>> tuple1[0]
1
>>> tuple1[-2]
12
# 报错:TypeError:
>>> tuple1[0]=12
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment
>>> type(tuple1)
<class 'tuple'>
# 2、切片(顾头不顾尾,步长)
>>> tuple1[0:3]
(1, 'hhaha', 1500.0)
>>> tuple1[0:5:2]
(1, 1500.0, 12)
# 3、长度
>>> len(tuple1)
6
# 4、成员运算 in 和 not in
>>> 'hhaha' in tuple1
True
>>> 'hhah' not in tuple1
True
# 5、循环
>>> for line in tuple1: print(line)
...
1
hhaha
1500.0
11
12
13