python——元组、字典

元组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()

 

 

posted @ 2022-05-25 17:13  非同凡响  阅读(105)  评论(0编辑  收藏  举报