在编程的世界中,我们经常需要把一组数据放在一起使用。
有时候,这组数据一旦确定,就不希望被改动,比如出生日期、常量设置、地理坐标等。这时候,“元组”就像一只上了锁的玻璃宝盒,里面的宝贝可以看,但不能改!
一、什么是元组?
元组跟列表很像,都是可以装很多内容的容器,但元组一旦创建,里面的内容就不能被修改。这是它最大的特点,也叫“不可变”。
元组的写法和列表类似,但用的是圆括号 ():
birthday = ("2013", "10", "15")
print(birthday)输出:
('2013', '10', '15')二、元组 vs 列表,有什么不同?
元组的“不可变”让它更加安全,也能被用在某些需要固定值的场合。
三、访问元组中的内容
和列表一样,元组也用索引访问,仍然从 0 开始:
birthday = ("2013", "10", "15")
print(birthday[0]) # 输出年 2013
print(birthday[1]) # 输出月 10四、不能改是真的!
如果你尝试修改元组里的内容,会怎么样?
birthday = ("2013", "10", "15")
birthday[1] = "12"会报错:
TypeError: 'tuple' object does not support item assignment元组是“只读宝盒”,你只能看,不能动。
五、元组可以打包和解包
Python 里有个很棒的技巧,叫“打包”和“解包”。
打包:
把多个值装进一个元组。
解包:
把元组里的内容,一次性赋值给多个变量。
info = ("小明", 12, "六年级") # 打包
name, age, grade = info # 解包
print(name)
print(age)
print(grade)输出:
小明
12
六年级这就像把一个快递箱一次性拆开,里面的东西各归其位。
六、元组也可以用于循环和组合
元组虽然不能改,但可以遍历:
birthday = ("2013", "10", "15")
for item in birthday:
print(item)输出:
2013
10
15元组也可以和列表、字符串一样配合 len()、in 来用:
birthday = ("2013", "10", "15")
print(len(birthday)) # 元素数量
print("10" in birthday) # 是否包含某项小贴士:元组也可以只写一个元素!
写一个元素的元组时,要加一个英文逗号:
one = ("Python",) # 注意最后的逗号
print(type(one)) #如果没有逗号,Python 会把它当作字符串。请自己测试一下吧。
✏️ 小练习:我最喜欢的三样东西
创建一个元组 favorites,包含你最喜欢的三样东西,比如:
favorites = ("猫咪", "草莓蛋糕", "科学小说")然后:
(1)打印整个元组;
(2)解包到三个变量中,分别打印;
(3)写一个循环,打印出每一样喜欢的理由,比如:
我喜欢猫咪,因为它们软软的
我喜欢草莓蛋糕,因为它甜甜的
我喜欢科学小说,因为它有趣“点赞有美意,赞赏是鼓励”
热门跟贴