元组
定义
1. 由一系列变量组成的不可变序列容器。
2. 不可变是指一但创建,不可以再添加/删除/修改元素。
基础操作
- 创建空元组:
元组名 = ()
元组名 = tuple() - 创建非空元组:
元组名 = (20,)
元组名 = (1, 2, 3)
元组名 = 100,200,300
元组名 = tuple(可迭代对象) - 获取元素:
变量 = 元组名[索引]
变量 = 元组名[切片] # 赋值给变量的是切片所创建的新列表 - 遍历元组:
正向:
for 变量名 in 列表名:
变量名就是元素
反向:
for 索引名 in range(len(列表名)-1,-1,-1):
元组名[索引名]就是元素
作用
1. 元组与列表都可以存储一系列变量,由于列表会预留内存空间,所以可以增加元素。
2. 元组会按需分配内存,所以如果变量数量固定,建议使用元组,因为占用空间更小。
3. 应用:
变量交换的本质就是创建元组:x, y = (y, x )
格式化字符串的本质就是创建元祖:“姓名:%s, 年龄:%d” % (“tarena”, 15)
字典 dict
定义
1. 由一系列键值对组成的可变散列容器。
2. 散列:对键进行哈希运算,确定在内存中的存储位置,每条数据存储无先后顺序。
3. 键必须惟一且不可变(字符串/数字/元组),值没有限制。
基础操作
- 创建字典:
字典名 = {键1:值1,键2:值2}
字典名 = dict (可迭代对象) - 添加/修改元素:
语法:
字典名[键] = 数据
说明:
键不存在,创建记录。
键存在,修改值。 - 获取元素:
变量 = 字典名[键] # 没有键则错误 - 遍历字典:
for 键名 in 字典名:
字典名[键名]
for 键名,值名 in 字典名.items():
语句 - 删除元素:
del 字典名[键] - 查询
key/循环
print(dict01[101])
获取所有key
for key in dict01:
print(key)
获取所有value
for value in dict01.values():
print(value)
获取所有key - value
for item in dict01.items():
print(item)# (k,v)
for key,value in dict01.items():
print(key)
print(value)
- 例题
"""
请使用容器的思想,改造下列代码:
统一管理
"""
year = int(input("请输入年份:"))
month = int(input("请输入月份:"))
# if month < 1 or month > 12:
# print("月份有误")
# elif month =