python元组的性质以及创建与遍历

元组是什么

元组是python内置的数据结构之一,是一个不可变序列

可变序列:列表,字典
	可以对序列进行增删改的操作,且对象地址(即对象的id)不会发生变化
不可变序列:字符串,元组
	没有增删改的操作

定义:

t = ( "aaa", "bbb", 123 )
t = tuple(("aaa", "bbb", 123))

为什么要将元组设置成不可变序列

在多任务环境下,同时操作对象时不需要加锁,因此在程序中尽量使用不可变序列。

  • 这句话可以这么解释:譬如,你的内存中存在一个关键数据,多个进程任务都需要对它进行访问,如果都可以对这个数据进行增删改的话,先不说安全性缺失,前一个程序修改数据后,后一个程序读取的就不是原始数据了。

注意事项

元组中存储的是对象的引用
a)如果元祖中对象本身为不可变,则不能再引用其它对象
b)如果元组中的对象是可变对象,则可变对象的引用不允许改变,但是数据可以变
看图(来自杨淑娟老师):
在这里插入图片描述
t元组不可变,但是它存储的第二个对象是列表,属于可变对象,此时:将t元组的第二个元素(引用)改为100是不允许的,但如果你修改的是该对象指向的对象,则可以修改。

代码

# 小括号创建
tup = ("aaa", "bbb", 123)
# 使用内置函数
t = tuple(("aaa", "bbb", 123))
# 只有一个元素时,一定要使用逗号以及小括号
t2 = (123,)
t3 = (123)
# 空元组
t4 = ()
t5 = tuple()

print(tup, type(tup))
print(t, type(t))
print(t2, type(t2))
print(t3, type(t3))

# 元组的遍历
ttt = ("aaa", "bbb", 123)

# 使用索引获取元素
print(ttt[0], ttt[1], ttt[2])

# 遍历元组
for item in ttt:
    print(item)

测试截图:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值