遍历字典_Python编程从入门到实践-连载5(字 典)
6.1 一个简单的字典
alien.pyalien_0 = {'color': 'green', 'points': 5}
print(alien_0['color'])
print(alien_0['points'])
字典alien_0存储了外星人的颜色和点数。使用两条print语句来访问并打印这些信息,如下所示:
green
5
6.2 使用字典
在Python中, 字典是一系列键—值对。每个键都与一个值相关联,你可以使用键来访问与之
相关联的值。与键相关联的值可以是数字、字符串、列表乃至字典。事实上,可将任何Python对
象用作字典中的值。
在Python中,字典用放在花括号{}中的一系列键—值对表示.
键—值对是两个相关联的值。指定键时, Python将返回与之相关联的值。键和值之间用冒号
分隔,而键—值对之间用逗号分隔。在字典中,你想存储多少个键—值对都可以。
6.2.1 访问字典中的值
要获取与键相关联的值,可依次指定字典名和放在方括号内的键,如下所示:
6.2.2 添加键—值对
字典是一种动态结构,可随时在其中添加键—值对。要添加键—值对,可依次指定字典名、用
方括号括起的键和相关联的值。
打印修改后的字典时,将看到这两个新增的键—值对:
6.2.3 先创建一个空字典 可先使用一对空的花括号定义一个字典,再分行添加各个键—值对。例如,下例演示了如何以这种方式创建字典alien_0:
使用字典来存储用户提供的数据或在编写能自动生成大量键—值对的代码时,通常都需要先
定义一个空字典。
6.2.4 修改字典中的值 要修改字典中的值,可依次指定字典名、用方括号括起的键以及与该键相关联的新值。
6.2.5 删除键— 值对
对于字典中不再需要的信息,可使用del语句将相应的键—值对彻底删除。使用del语句时,
必须指定字典名和要删除的键。
例如,下面的代码从字典alien_0中删除键'points'及其值:
输出表明,键'points'及其值5已从字典中删除,但其他键—值对未受影响:
删除的键—值对永远消失了
6.3 遍历字典
字典可用于以各种方式存储信息,因此有多种遍历字典的
方式:可遍历字典的所有键—值对、键或值。
6.3.1 遍历所有的键— 值对
可以使用一个for循环来遍历这个字典:
第一条print语句中的""确保在输出每个键—值对前都插入一个空行 :
即便遍历字典时,键—值对的返回顺序也与存储顺序不同。 Python不关心键—值对的存
储顺序,而只跟踪键和值之间的关联关系。
6.3.2 遍历字典中的所有键 在不需要使用字典中的值时,方法keys()很有用。
输出列出了每个被调查者的名字:
遍历字典时,会默认遍历所有的键,因此,如果将上述代码中的for name in favorite_
languages.keys():替换为for name in favorite_languages:,输出将不变。
6.3.3 按顺序遍历字典中的所有键
可使用函数sorted()来获得按特定顺序排列的键列表的副本:
6.3.4 遍历字典中的所有值
感兴趣的主要是字典包含的值,可使用方法values(),它返回一个值列表,而不包含任何键。
favorite_languages = {
'jen': 'python',
'sarah': 'c',
'edward': 'ruby',
'phil': 'python',
}
print("The following languages have been mentioned:")
for language in favorite_languages.values():
print(language.title())
输出如下:
为剔除重复项,可使用集合( set)。集合类似于列表,但每个元素都必须是独一无二的:
6.4 嵌套 有时候,需要将一系列字典存储在列表中,或将列表作为值存储在字典中,这称为嵌套。你
可以在列表中嵌套字典、在字典中嵌套列表甚至在字典中嵌套字典。
6.4.1 字典列表
遍历字典_Python编程从入门到实践-连载5(字 典)相关推荐
- python显示小数点后几位数_Python编程从入门到实践-连载1(变量和简单数据类型)...
第二章 变量和简单数据类型 2.2.0 变量 我们添加了一个名为message的变量.每个变量都存储了一个值--与变量相关联的信息.在这里,存储的值为文本"Hello Python worl ...
- python从入门到实践_Python编程从入门到实践日记Day32
Python编程从入门到实践日记Day32 第7章 函数(八) 1.传递任意数量的实参 - 使用任意数量的关键字实参 有时候,需要接受任意数量的实参,但预先不知道传递给函数的会是什么样的信息.在这种情 ...
- python 从入门到实践_Python编程从入门到实践日记Day15
Python编程从入门到实践日记Day15 第5章 字典(三) 1.使用字典(三) -由类似对象组成的字典 在前面的示例中,字典存储的是一个对象(游戏中的一个外星人)的多种信息,但你也可以使用字典来存 ...
- python tk combobox设置值为空_Python编程从入门到实践日记Day24
Python编程从入门到实践日记Day24 第6章 用户输入和while循环(五) 1. 使用while循环来处理列表和字典(二) - 删除包含特定值的所有列表元素 在之前我们学过可以使用函数remo ...
- python编程从入门到实践第八章_Python编程从入门到实践的第三天
#-*- coding = utf-8 -*- #今天是12月24号了,天气阴,不是太好,这是我看Python编程从入门到实践的第三天,现在是上午,我是皮卡丘,这是我敲的第八章的代码 #第八章练习题1 ...
- python编程入门电脑推荐_Python编程从入门到实践
Python编程从入门到实践 作者:[美]埃里克·马瑟斯(EricMatthes)著,袁国忠译 ISBN:9787115428028 出版社:人民邮电出版社 出版日期:2016-07-01 正文语种: ...
- python从入门到实践学习笔记_Python编程从入门到实践:学习笔记1(第二章)
开通博客我用的理由是:读书学习时记笔记,一方面为了回顾,一方面为了督促自己.fighting! 学习Python,我买了Python编程从入门到实践. 我将从第二章开始记录我认为我以后会忘记以及重要的 ...
- python编程入门到实践笔记习题_Python编程从入门到实践笔记——列表简介
python编程从入门到实践笔记--列表简介 #coding=utf-8 #列表--我的理解等于c语言和java中的数组 bicycles = ["trek","cann ...
- python入门到实践试题及答案_python编程:入门到实践练习答案
[实例简介] 书本<python编程:入门到实践>的课后练习答案 [实例截图] [核心代码] 练习答案 ├── Solutions - Chapter 10.docx ├── Soluti ...
最新文章
- 异步请求之XMLHttpRequest篇
- 【numpy学习笔记】矩阵操作
- Java8 - 使用工厂方法 supplyAsync创建 CompletableFuture
- 安装ORACLE RAC时,用到的一些小命令1.弹出CD,2:配置时间同步,3.查看磁盘信息UUID
- 【Java】求解N皇后问题
- 华科网络内容管理系统 v5.6 手机 PC
- .NET Core RSA 签名和验签(密钥为 16 进制编码)
- java连接数据库 oracle,Oracle数据库之一分钟教你学会用java连接Oracle数据库
- mysql 备库同步_MYSQL主从库同步配置过程
- 将数据追加到html 表格中,【HTML】使用Jquery实现将输入数据添加至表格中
- keil-5.25Pro自带jlink驱动调试时自动掉线问题
- qmc转码_QQ音乐qmc3格式转换器免费版
- 国外15种手机游戏引擎和开发工具介绍
- 最强蜗牛服务器维护祷告什么时候领取都一样,最强蜗牛猴子祷告奖励什么时候领...
- opencore 引导 近完美 黑苹果EFI(技嘉H310/I5-9400F/RX560D)
- 图片文件,图片文件流和BASE64加密字符串之间的转换,以及图片的BASE64加密字符串再jsp上如何显示
- mini2440 -- TFTP方式下载u-boot
- puzzle(105)幻方、幻圆、拉丁方
- 关于SQL Server numeric数据类型介绍
- python快速开发app_python 使用Airtest超快速开发App爬虫
热门文章
- mysql命令行导入dmp文件,oracle的备份文件(dmp)导入mysql数据库方法
- Spring框架最终注解标签注入方法
- linux link path walk,python之os.walk()与os.path.walk()
- 乳化液稳定剂php,乳化液稳定剂PHP对小于0.1mm煤泥浮选的影响
- esp8266 扫描wifi_wifi气象站
- 查询oracle数据库错误修改了,【案例】Oracle报错ora-00600[2662] 修改控制文件scn推进数据库scn...
- java输入其他字符提示_Eclipse输入任意字母或指定字符出现提示框
- go语言--goroutine
- redis之django-redis
- Two Bases CodeForces - 602A (BigInteger c++long long也可以)