元组tuple:可存放任意类型、可以任意多个数据
数据内容不能改变、使用小括号()
my_tuple = (1,xxx,3.14,False) 定义一个元组,数据后要加逗号 ,
常用方法(与列表一致):1、使用下标和切片查看 my_tuple[1]
2、index()--查找下标 、count()
字典dict---由key - value 组成,一组键值对是一个数据,键不能重复,键一般为字符串不能为列表
my_dict = {key : value , key : value}字典的值可以是列表[],添加列表值 my_dict[键].append(值)
字典增加和修改:
my_dict[键] = 值 如键存在,则为修改;如键不存在,则为添加,只能添加其他键值的后面
字典的删除:
del my_dict[键] ---删除指定键值对 /my_dict.pop(键) 删除字典的列表的值 my_dict[键].pop(值)
my_dict.clear() ---清空键值对
字典的查询:字典无下标,要查找值用key
my_dict[键] / my_dict.get(键)
字典的遍历:
1、对字典的键进行遍历
a. for k in dict:
print(k)
b. for k in dict.key():
print(k)
2、对字典的值进行遍历
for k in dict.values():
print(k)
3、对字典的键值对进行遍历
for k,v in dict.items():
print(k,v )
总结:
1、字符串、列表、元组 支持加法运算
- my_str = "hello" + "world" # helloworld
- my_list = [1, 2, 3] + [1, 2, 3] # [1, 2, 3, 1, 2, 3]
- my_tuple = (1, 2) + (3, 4) # (1, 2, 3, 4)
2、字符串、元组、列表 支持乘数字
- my_str1 = "hello" * 2 # hellohello
- my_list1 = [1, 2, 3] * 3 # [1, 2, 3, 1, 2, 3, 1, 2, 3]
- my_tuple1 = (1, 2) * 2 # (1, 2, 1, 2)
3、len() 在容器中都可以使用
4、in 关键字在容器中都可以使用 注意:在字典中判断字段的键是否存在
练习1:
- # 输入3个人信息,包括姓名和年龄,存入字典后将字典存入列表并打印
- # 打印格式如: 张三 20
- # 定义一个列表
- my_list = []
- # 使用循环,输入3个人信息
- for i in range(3):
- # 循环一次创建一个字典
- my_dict = {}
- name = input("请输入姓名:")
- age = input("请输入年龄:")
- # 将信息存入字典
- my_dict['name'] = name
- my_dict['age'] = age
- # 将字典存入列表 列表.append()
- my_list.append(my_dict)
- # 遍历打印信息
- for a in my_list:
- #根据字典的key来获取value
- print(a['name'], a['age'])
练习2:
- # 列表:
- # my_list = [{'id' : 1 , ' money' : 10 },{'id' : 2, ' money' : 20 },{'id' : 3 , ' money' : 30 },{'id' : 4 , ' money' : 40 }]
- # 定义函数,功能如下:
- # 如果字典的id为奇数,则money的值加20
- # 如果字典的id为偶数,则money的值加10
- # 打印查看结果
- my_list = [{'id': 1, 'money': 10}, {'id': 2, 'money': 20}, {'id': 3, 'money': 30}, {'id': 4, 'money': 40}]
- # 定义一个函数
- def func():
- # 遍历my_list i 为{}字典
- for i in my_list:
- # 获取id对应的值 字典.get(key)
- # 如果字典的id为奇数,则money的值加20
- if i.get('id') % 2 == 1:
- i['money'] = i.get('money') + 20
- # 如果字典的id为偶数,则money的值加10
- else:
- i['money'] = i.get('money') + 10
- print(my_list)
-
- func()