python07-元组

元组 - (元素1,元素2,元素3...)

列表 - [元素1,元素2,元素3...]

元组是可以不带圆括号的,只要逗号隔开就行。和其他序列一样,元组也可以用下标来获取,元组也支持切片操作,但是元组元素是不能改变的,所以元组不能只能查,不能增删改减。对于查就用count(),index()

对比列表,元组可以切片,查,元组之间相加、相乘、嵌套、迭代、嵌套列表的循环,但是没有元组推导式。

rhyme = 1,2,3,4,5,"上山打老虎"
rhyme[-1]    #'上山打老虎'
rhyme[1]    #2
rhyme[::-1]    #('上山打老虎', 5, 4, 3, 2, 1)

s = 1,3,3,2,4,2,5
s.count(3)    #2

heros = "绿巨人","黑寡妇","钢铁侠"
heros.index("钢铁侠")    #2

a = (1,2,3)
b = (4,5,6)
a + b    #(1, 2, 3, 4, 5, 6)   加法
a * 3    #(1,2,3,1,2,3,1,2,3)  乘法
w = a,b    #((1, 2, 3), (4, 5, 6)) 嵌套

"""支持迭代"""
for each in a:
    print(each)  

"""嵌套元组循环"""  
for i in w:
    for each in i:
        print(each)

元组的圆括号什么时候省略?与其思考什么时候加圆括号不如一直加着

如何生成一个元素的元组? x = (1,),注意有逗号,通过type(x)看到类型为tuple,中文为元组

打包和解包:生成一个元组我们称之为元组的打包,将元组元素一次性赋值给变量名称之为解包,解包的变量名和元组的元素数要一致。

元组一定不可变?元组中的元素虽然是不可变的,但是元组中的元素指向一个可变的列表,那也是依然可以修改元组里的内容。

a = (123,"ABC",3.14)    #打包
x,y,z = a    #赋值

x,y = 10,20    #对于此类多重赋值,是先打包 _=(10,20)
               #然后再赋值

s = [1,2,3]
k = [4,5,6]
t = (s,k)    #([1, 2, 3], [4, 5, 6])
t[0][0] = 0    #([0, 2, 3], [4, 5, 6])

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值