字典的常用操作

  1. """
  2. 1 创建并访问字典
  3. """
  4. #d = {key1 : value1, key2 : value2 }
  5. #不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住,
  6. dict1={'Name':"renyu", 'Age':24, 3:3213, 3:222}
  7. print(dict1['Name'],dict1['Age'],dict1[3])
  8. """
  9. 2 修改字典
  10. """
  11. dict1={'Name':'任钰','Age':24,'Class':'First'}
  12. dict1['Age'] = 25 #更新Age
  13. dict1['School'] = 'AQNU' #添加信息
  14. print(dict1['Age'])
  15. print(dict1['School'])
  16. """
  17. 3 删除字典元素
  18. """
  19. dict1={'Name':'任钰','Age':24,'Class':'First'}
  20. del dict1['Name'] #删除键
  21. dict1['Name'] = 'ren'
  22. print(dict1['Name'])
  23. dict1.clear() #清空字典
  24. print(dict1) #>>>{}
  25. del dict1 #>>>删除字典
  26. """
  27. 4 字典支持无限嵌套
  28. """
  29. #注意逗号!!!
  30. dict1 = {'南京':{
  31. '鼓楼区':['NJU','SEU']}
  32. ,'北京':{
  33. '海淀区':['PKU','THU']}
  34. }
  35. print(dict1['南京']['鼓楼区'])
  36. """
  37. 5 用字典记录学生名字和分数,并分级
  38. """
  39. students = {}
  40. write = 1
  41. while write :
  42. name = str(input('Name:'))
  43. grade = int(input('Grade:'))
  44. students[str(name)] = grade
  45. write = int(input('continue input?\n 1/continue 0/exit'))
  46. print('name rate'.center(20,'-')) #.center用于控制输出的格式:str.center(width[, fillchar])
  47. for key,value in students.items() : #dict.items()以列表返回可遍历的(键, 值) 元组数组
  48. if value >= 90:
  49. print('%s %s A'.center(20,'-')%(key,value))
  50. elif 89 >= value >= 60 :
  51. print('%s %s B'.center(20,'-')%(key,value))
  52. else :
  53. print('%s %s C'.center(20,'-')%(key,value))
  54. print(str(students)) # str(dict):输出字典,以可打印的字符串表示。
  • 字典中的key必须是唯一的,但是值则不必,类似于数学中的函数的概念
  • 值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。

Update()方法

  1. cars = {'BMW': 8.5, 'BENS': 8.3, 'AUDI': 7.9}
  2. cars.update({'BMW':4.5, 'PORSCHE': 9.3})
  3. print(cars)