【Python】数据结构:元组,括号表示()

1.元组

元组和列表类似,也是一种容器数据类型,可以用一个变量(对象)来存储多个数据,但元组的元素不能修改,把多个元素组合到一起就形成了一个元组。

t = ('张三', 38, True, '中国上海')
print(t) # ('张三', 38, True, '中国上海')
print(t[0]) # 张三
print(t[3]) # 中国上海
for member in t: #遍历元组
print(member)
t[0] = '李四' # 给某个元素重新赋值会报错,TypeError: 'tuple' object does not support item assignment
t = ('王五', 20, True, '浙江温州')
print(t) # ('王五', 20, True, '浙江温州') 重新引用新的元组,原来的元组被回收了

2.元组和列表的转换

(1)元组-->列表
使用list(元组),元组的元素可以修改

t = ('王五', 20, True, '浙江温州')
person = list(t)
print(person) # ['王五', 20, True, '浙江温州']
person[0] = '老刘'
person[1] = 25
print(person) # ['老刘', 25, True, '浙江温州']

(2)列表-->元组

fList = ['苹果', '香蕉', '西瓜']
fTuple = tuple(fList)
print(fTuple) # ('苹果', '香蕉', '西瓜')

3.有了列表为什么还需要元组

(1)元组中的元素无法修改,尤其在多线程环境中不变的对象(元组)更容易维护。
(2)线程无法修改不变对象的内部状态,因此该对象是线程安全的,可以省掉同步操作,因此一个不变对象可以方便的被共享访问。
(3)如果不需要对元素进行添加、删除、修改时,可以考虑使用元组。
(4)元组在创建时间和占用空间上优于列表。

  • 判断占用空间
fList = ['苹果', '香蕉', '西瓜']
fTuple = tuple(fList)
print(sys.getsizeof(fList)) # 88
print(sys.getsizeof(fTuple)) # 72
  • 判断创建时间
    命令行使用ipython
pip install ipython #安装
ipython #打开

image

posted @   植树chen  阅读(71)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
点击右上角即可分享
微信分享提示