1.元组
1.1 什么是元组(tuple)
元组就是不可变的列表
元组也是容器型数据类型, 将()作为容器的标志,多个元素之间用逗号隔开:(元素1, 元素2, 元素3, 元素4,…)
元组不可变(不支持增删改);元组是有序的(支持下标操作)
元组中的元素的要求和列表一样
1)空元组: ()
tuple1 = ()
print(type(tuple1))
2)单个元素的元组: (元素,)
list1 = [10] # 单个元素的列表
tuple2 = (10)
print(tuple2, type(tuple2)) # 10 <class 'int'>
tuple3 = (10,)
print(tuple3, type(tuple3)) # (10,) <class 'tuple'>
3)多个元素的元组:
a. 变量 = (元素1, 元素2, 元素3,…)
tuple4 = (100, 200, 300)
print(tuple4, type(tuple4)) # (100, 200, 300) <class 'tuple'>
b. 变量 = 元素1, 元素2, 元素3, …
tuple5 = 10, 20, 30, 40
print(tuple5, type(tuple5)) # (10, 20, 30, 40) <class 'tuple'>
1.2 获取元组中的元素
1)列表获取元素的方式元组都支持
a.获取单个元素
names = '生活大爆炸', '权利的游戏', '吸血鬼日记', '破产姐妹', '兄弟连', '尼基塔'
print(names[-2])
b.切片
print(names[1::2]) # ('权利的游戏', '破产姐妹', '尼基塔')
c.遍历
for x in names:
print(x)
print('=========================')
for index in range(len(names)):
print(names[index])
- 其他方式(同样适用于列表)
a. 变量1, 变量2, 变量3, … = 元组
注意: 在这儿变量的个数要和元组中元素的个数保持一致
tuple6 = (10, 78, 45)
x, y, z = tuple6
print(x, y, z) # 10 78 45
num1, num2 = 100, 200 # num1, num2 = (100, 200)
b.变量1, 变量2, 变量3, … = 元组
前面的变量的个数小于元组中元组的个数,并且有且只有一个变量前有*
person = ('余婷', '女', 18, 100, 89, 50)
name, gender, age, *num = person
print(name, gender, age) # 余婷 女 18
print(num) # [100, 89, 50]
*x, y, z = 10, 90, 89, 78, 89
print(y, z) # 78 89
print(x) # [10, 90, 89]
a, b, *c, d, e = 1, 2, 3, 4, 5, 6, 7, 8, 9
print(a, b) # 1 2
print(d, e) # 8 9
print(c) # [3, 4, 5, 6, 7]
补充:*的解包功能
list1 = [10, 20, 30]
print(*list1) # 10 20 30 print(10, 20, 30)
1.3.列表相关操作全部适用于元组
2.字典基础
定义一个变量保存一个学生的信息:
stu = ['张三', 30, '男', '10011', 170, 65, 60]
print(stu[1])