4.6.2 元组数据类型

除了两个方面,“元组”数据类型几乎与列表数据类型一样。首先,元组输入


时用圆括号(),而不是用方括号[]。例如,在交互式环境中输入以下代码:
>>>  eggs  =  ('hello',  42,  0.5)
>>>  eggs[0]
'hello'
>>>  eggs[1:3]
(42,  0.5)
>>>  len(eggs)
3

但元组与列表的主要区别还在于,元组像字符串一样,是不可变的。元组不能让它们的值被修改、添加或删除。在交互式环境中输入以下代码,注意 TypeError出错信息:
>>>  eggs  =  ('hello',  42,  0.5)
>>>  eggs[1]  =  99
Traceback  (most  recent  call  last):
File  "<pyshell#5>",  line  1,  in  <module> eggs[1]  =  99
TypeError:  'tuple'  object  does  not  support  item  assignment

如果元组中只有一个值,你可以在括号内该值的后面跟上一个逗号,表明这种情况。否则,Python  将认为,你只是在一个普通括号内输入了一个值。逗号告诉 
Python,这是一个元组(不像其他编程语言,Python 接受列表或元组中最后表项后面跟的逗号)。在交互式环境中,输入以下的 type()函数调用,看看它们的区别:
>>>  type(('hello',))
<class  'tuple'>
>>>  type(('hello'))
<class  'str'>

你可以用元组告诉所有读代码的人,你不打算改变这个序列的值。如果需要一个永远不会改变的值的序列,就使用元组。使用元组而不是列表的第二个好处在于,因为它们是不可变的,它们的内容不会变化,Python 
可以实现一些优化,让使用元组的代码比使用列表的代码更快。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大飞哥软件自习室

希望支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值