首页 > 其他分享 >第6章. 字典

第6章. 字典

时间:2023-06-05 22:24:56浏览次数:28  
标签:languages alien 键值 6.2 print 字典

  • 6.1 一个简单的字典
  • 6.2 使用字典
  • 6.2.1 访问字典中的值
  • 6.2.2 添加键值对
  • 6.2.3 先创建一个空字典
  • 6.2.4 修改字典中的值
  • 6.2.5 删除键值对
  • 6.2.6 由类似对象组成的字典
  • 6.2.7 使用 get() 来访问值
  • 6.3 遍历字典
  • 6.3.1 遍历所有键值对
  • 6.3.2 遍历字典中的所有键
  • 6.3.3 按特定顺序遍历字典中的所有键
  • 6.3.4 遍历字典中的所有值
  • 6.4 嵌套
  • 6.4.1 字典列表
  • 6.4.2 在字典中存储列表
  • 6.4.3 在字典中存储字典
  • 6.1 一个简单的字典

示例:

1 alien_0 = {'color':'green','points':5}
2 print(alien_0['color'])
3 print(alien_0['points'])

运行结果:

  

 

  • 6.2 使用字典

  在 Python 中,字典是一系列键值对,每个键都与一个值相关联,你可使用键来访问相关联的值。与键相关联的值可以是数、字符串、列表乃至字典。事实上,可将任何 Python 对象用作字典中的值。

  在 Python 中,字典用放在花括号 { } 中的一系列键值对表示。

  键和值之间用冒号分隔,而键值对之间用逗号分隔。在字典中,想存储多少个键值对都可以。

 

  • 6.2.1 访问字典中的值

  要获取与键相关联的值,可依次指定字典名和放在方括号内的键。

示例:

1 alien_0 = {'color':'green','points':5}
2 print(alien_0['color'])

运行结果:

  

 

  • 6.2.2 添加键值对

  字典是一种动态结构,可随时在其中添加键值对。要添加键值对,可依次指定字典名、用方括号括起的键和相关联的值。

示例:

1 alien_0 = {'color':'green','points':5}
2 print(alien_0)
3 
4 alien_0['x_position'] = 0
5 alien_0['y_position'] = 25
6 print(alien_0)

运行结果:

  

 

  • 6.2.3 先创建一个空字典

  可使用一对空花括号定义一个字典。

示例:

1 alien_0 = {}
2 print(alien_0)
3 
4 alien_0['color'] = 'green'
5 alien_0['points'] = 5
6 print(alien_0)

运行结果:

  

 

  • 6.2.4 修改字典中的值

  要修改字典中的值,可依次指定字典名,用方括号括起的键,以及与该键相关联的新值。

示例:

1 alien_0 = {'color':'green'}
2 print(f"The alien is {alien_0['color']}.")
3 
4 alien_0['color'] = 'yellow'
5 print(f"The alien is now {alien_0['color']}.")

运行结果:

  

 

  • 6.2.5 删除键值对

  可使用 del 语句将相应的键值对彻底删除。使用 del 语句时,必须指定字典名和要删除的键。

  删除的键值对会永远消失。

示例:

1 alien_0 = {'color':'green','points':5}
2 print(alien_0)
3 
4 del alien_0['points']
5 print(alien_0)

运行结果:

  

 

  • 6.2.6 由类似对象组成的字典

  确定需要使用多行来定义字典时,要在输入左花括号后按回车键。在下一行缩进四个空格,指定第一个键值对,并在它后面加上一个逗号。

  一种不错的做法是,在最后一个键值对后面也加上逗号,为以后在下一行添加键值对做好准备。

示例:

1 favorite_languages = {
2     'jen':'python',
3     'sarah':'c',
4     'edward':'ruby',
5     'phil':'python',
6 }
7 
8 language = favorite_languages['sarah'].title()
9 print(f"Sarah's favorite language is {language}.")

运行结果:

  

 

  • 6.2.7 使用 get() 来访问值

  使用放在方括号内的键从字典中获取感兴趣的值时,可能会引发问题:如果指定的键不存在就会出错。

  可使用方法 get() 在指定的键不存在时返回一个默认值,从而避免这样的错误。

  方法 get() 的第一个参数用于指定键,是必不可少的;第二个参数为指定的键不存在时要返回的值,是可选的。

  如果字典中有要查询的键,将获得与之相关联的值;如果没有,将获得指定的默认值。

  调用 get() 时,如果没有指定第二个参数且指定的键不存在,Python 将返回值 None。

示例:

1 alien_0 = {'color':'green','speed':'slow'}
2 
3 point_value = alien_0.get('points','No point value assigned.')
4 print(point_value)

运行结果:

  

 

  • 6.3.1 遍历所有键值对

  方法 items() 返回一个键值对列表。

示例:

1 user_0 = {
2     'username':'efermi',
3     'first':'enrico',
4     'last':'fermi',
5 }
6 
7 for k,v in user_0.items():  # k和v 两个变量
8     print(f"\nKey:{k}")
9     print(f"Value:{v}")

运行结果:

  

 

  • 6.3.2 遍历字典中的所有键

  在不需要使用字典中的值时,方法 keys() 很有用。

示例:

1 favorite_languages = {
2     'jen':'python',
3     'sarah':'c',
4     'edward':'ruby',
5     'phil':'python',
6 }
7 
8 for name in favorite_languages.keys():
9     print(name.title())

运行结果:

  

 

遍历字典时,会默认遍历所有的键。因此,如果将上述代码中的:

1 for name in favorite_languages.keys():

替换为:

1 for name in favorite_languages:

 输出将不变。

 

  • 6.3.3 按特定顺序遍历字典中的所有键

  方法 keys() 实际上返回一个列表,其中包含字典中的所有键。

  可使用函数 sorted() 来获得按特定顺序排列的键列表的副本。

示例:

1 favorite_languages = {
2     'jen':'python',
3     'sarah':'c',
4     'edward':'ruby',
5     'phil':'python',
6 }
7 
8 for name in sorted(favorite_languages.keys()):
9     print(name.title())

运行结果:

  

 

  • 6.3.4 遍历字典中的所有值

  可使用方法 values() 来返回一个值列表,不包含任何键。

 1 favorite_languages = {
 2     'jen':'python',
 3     'sarah':'c',
 4     'edward':'ruby',
 5     'phil':'python',
 6 }
 7 
 8 print("The following languages have been mentioned:")
 9 for language in favorite_languages.values():
10     print(language.title())

运行结果:

  

 

  为剔除重复项,可使用集合 set。集合中的每个元素都是独一无二的。

 1 favorite_languages = {
 2     'jen':'python',
 3     'sarah':'c',
 4     'edward':'ruby',
 5     'phil':'python',
 6 }
 7 
 8 print("The following languages have been mentioned:")
 9 for language in set(favorite_languages.values()):
10     print(language.title())

运行结果:

  

 

  可使用花括号直接创建集合,并在其中用逗号分隔元素:

1 languages = {'python','ruby','python','c'}
2 print(languages)

运行结果:

  

  集合和字典很容易混淆,因为它们都是用一对花括号定义的。当花括号内没有键值对时,定义的很可能是集合。不同于列表和字典,集合不会以特定的顺序存储元素。

 

  • 6.4.1 字典列表
1 alien_0 = {'color':'green','points':5}
2 alien_1 = {'color':'yellow','points':10}
3 alien_2 = {'color':'red','points':15}
4 
5 aliens = [alien_0,alien_1,alien_2]
6 
7 for alien in aliens:
8     print(alien)

运行结果:

  

 

 

 

  • 6.4.2 在字典中存储列表
1 pizza = {
2     'crust':'thick',
3     'toppings':['mushrooms','extra cheese'],
4 }
5 
6 print(f"You ordered a {pizza['crust']}-crust pizza with the following toppings:")
7 for topping in pizza['toppings']:
8     print("\t" + topping)

res:

  

 

  • 6.4.3 在字典中存储字典
 1 users = {
 2     'aeinstein':{
 3         'first':'albert',
 4         'last':'einstein',
 5         'location':'princeton',
 6     },
 7 
 8     'mcurie':{
 9         'first':'marie',
10         'last':'curie',
11         'location':'paris',
12     },
13 }
14 
15 for username,user_info in users.items():
16     print(f"Username:{username}")
17     full_name = f"{user_info['first']} {user_info['last']}"
18     location = user_info['location']
19 
20     print(f"\tFull name:{full_name.title()}")
21     print(f"\tLocation:{location.title()}")

res:

  

(〃>_<;〃)(〃>_<;〃)(〃>_<;〃)

标签:languages,alien,键值,6.2,print,字典
From: https://www.cnblogs.com/wjjgame/p/17459068.html

相关文章

  • python 列表,元组,字典
    列表 list[]print("更新")list=[]list.append("aa")list.append('bb')print(list)print("删除")dellist[1]print(list)print(len([1,2,3]))print([1,2,3]+[4,5,6])print(["a"]*3)print(3in[1,2,3])forxi......
  • python基础学习-字典
    """字典dict定义:元素是键值对,key不能重复,不能使用下标索引,key是除字典外其他类型,value为任意类型,可嵌套,可修改,支持for循环,不支持while循环#字面量{key:value,key:value,key:value}#定义变量变量名称={key:value,key:value,key:value}#定义空列表变量名称=dict()......
  • 分布式医疗云平台(项目功能简介截图)【系统管理(科室管理、用户管理、角色管理、菜单管理
    项目功能截图1.系统管理 1.1.科室管理 1.2、用户管理1.3、角色管理 1.4、菜单管理  1.5、字典管理1.6、通知公告管理 1.7、登陆日志管理 1.8、操作日志管理 1.9、检查费用设置 1.10,挂号费用设置 项目功能截图1.系统管理 1.1.科室管理1.1.1、科室查询 1.1.2、科室添加......
  • 对字典排序
    dict(sorted(dict_counts.items(),key=lambdax:x[1],reverse=False))根据键值对字典排序并转化为字典https://www.freecodecamp.org/chinese/news/sort-dictionary-by-value-in-python/......
  • Python中字典取值常用的方法!
    字典是Python中比较常见的数据类型之一,它是一种可变容器模型,可以存储任意数量的任意类型的数据,而且字典中的每个元素由一个键和一个值组成,键和值之间用冒号分隔。本文为大家介绍一下Python中字典取值常用的方法,跟着学习一下吧。1、使用方括号[]运算符使用方括号[]运算......
  • 算法之二分法、三元表达式、列表生成式、字典生成式(了解)、匿名函数、常见的内置函数
    算法之二分法二分概念二分算法,又称折半查找,即在一个单调有序的集合中查找一个解。每次分为左右两部分,判断解在哪个部分中并调整上下界,直到找到目标元素,每次二分后都将舍弃一半的查找空间。定义and实现:算法就是解决问题的高效办法常见的算法:二分法算法还可以锻炼我们的......
  • 创建字典进行字段匹配
     --查询varpostNumFiled=Static_Dic.RoleType_PostNum.FirstOrDefault(o=>o.Key==roleType).Value; --封装匹配的字典publicstaticDictionary<int,string>RoleType_PostNum{get{Dictionary<int,string&g......
  • Python字典:强大的键值对数据结构
    在Python中,字典是一种多功能和强大的数据结构,它允许我们以键值对的形式存储和操作数据。字典在其他编程语言中也被称为关联数组或哈希映射,它提供了一种高效的方式来根据键检索和更新值。在本文中,我们将探讨Python中的字典概念,并了解如何有效地使用它们。Python中的字典是无序的键......
  • python通过文件操作字典
    python通过文件操作字典python把字典保存到文件中python从文件中加载字典importjsonmy_dict={'Apple':4,'Banana':2,'Orange':6,'Grapes':11,'area1':[[23,56],[66,12],[68,89],[90,890]]}#保存文件tf=open("myDictionary.js......
  • python目录扫描工具——dirsearch使用,可以使用御剑的字典 支持慢速扫描,一般使用-s 60
    使用御剑的字典:pythondirsearch.py-uxxx.com-e*-w/media/dir_dict/ASP.txt,/media/dir_dict/ASPX.txt,/media/dir_dict/DIR.txt,/media/dir_dict/JSP.txt,/media/dir_dict/MDB.txt,/media/dir_dict/PHP.txt 非常好用!!!如下是御剑的字典文件。 进入dirsearch目录,进行扫描在这......