学习Python第二周的第二天
常用数据结构之元组
元组和列表一样,也是一种容器型数据类型。元组和列表的不同之处在于,元组是不可变类型,这就意味着元组类型的变量一旦定义,其中的元素不能再添加或删除,而且元素的值也不能进行修改。定义元组通常使用()
字面量语法。元组类型支持的运算符跟列表是一样。下面的代码演示了元组的定义和运算。
fruits1 = ('apple', 'banana', 'grape',)
print(type(fruits1))
一个元组中如果有两个元素,我们就称之为二元组;一个元组中如果五个元素,我们就称之为五元组。需要提醒大家注意的是,()
表示空元组,但是如果元组中只有一个元素,需要加上一个逗号,否则()
就不是代表元组的字面量语法,而是改变运算优先级的圆括号。下面用代码演示一下
nums = ('100',)
print(type(nums))
nums = ('100')
print(type(nums))
看,如果没有逗号,计算机认为我们输入的是字符串,而不是元组。所以不能忘记
fruits1 = ('apple', 'banana', 'grape',)
print(type(fruits1))
# 重复运算
print(fruits1 * 3)
# 成员运算
print('apple' in fruits1)
print('grape' not in fruits1)
fruits1 = ('apple', 'banana', 'grape',)
print(type(fruits1))
# 合并运算
fruits2 = ('pitaya', 'litchi')
fruits3 = fruits1 + fruits2
print(fruits3)
# 索引和切片
print(fruits3[4], fruits3[-1])
print(fruits3[1:4])
print(fruits3[1:4:2])
print(fruits3[::-1])
简单的总结
列表和元组都是容器型的数据类型,即一个变量可以保存多个数据。列表是可变数据类型,元组是不可变数据类型,所以列表添加元素、删除元素、清空、排序等方法对于元组来说是不成立的。但是列表和元组都可以进行拼接、成员运算、索引和切片这些操作,就如同之前讲到的字符串类型一样,因为字符串就是字符按一定顺序构成的序列,在这一点上三者并没有什么区别。我们推荐大家使用列表的生成式语法来创建列表,它很好用,也是Python中非常有特色的语法。
三者并没有什么区别。我们推荐大家使用列表的生成式语法来创建列表,它很好用,也是Python中非常有特色的语法。