Python学习笔记5

5字典

5.1使用字典
在Python中,字典是一系列键值对。每个键都与一个值相关联,你可使用键来访问值。与键相关联的值可以是数、字符串、列表乃至字典。事实上,可将任何Python对象用作字典中的值。
输入
在这里插入图片描述
输出
在这里插入图片描述
在字典中,字符串‘color’是一个键,与之相关联的值为‘green’。
5.2访问字典中的值
输入
在这里插入图片描述
输出
在这里插入图片描述
5.2.1添加键值对
输入
在这里插入图片描述
输出
在这里插入图片描述
6.2.3修改字典中的值
输入
在这里插入图片描述
输出
在这里插入图片描述
输入
在这里插入图片描述
输出
在这里插入图片描述
6.2.4删除键值对
下面的代码从字典alien_0中删除键’points’及其值:
输入
在这里插入图片描述
输出
在这里插入图片描述
注意:删除的键值对会永远消失。
5.2.5 由类似对象组成的字典
输入
在这里插入图片描述
确定需要使用多行定义字典时,要在输入左花括号后按回车键。在下一行缩进四个空格,指定第一个键值对,并在它后面加上一个逗号。此后在按回车键时,文本编辑器将自动缩进后续键值对,且缩进量与第一个键值对相同。
输出
在这里插入图片描述
5.2.6 使用get()来访问值
方法get()的第一个参数用于指定键,是必不可少的;第二个参数为指定的键不存在时要返回的值,是可选的。
输入
在这里插入图片描述
输出
在这里插入图片描述
注意:调用get()时,如果没有指定第二个参数且指定的键不存在,Python将返回值None。

5.3 遍历字典
5.3.1遍历所有键值对
输入
在这里插入图片描述
输出
在这里插入图片描述
要编写遍历字典的for循环,可声明俩个变量,用于存储键值对中的键和值。这俩个变量可以使用任意名称。
输入
在这里插入图片描述
输出
在这里插入图片描述
由于该字典中的键都是人名,值都是语言,因此在循环中使用变量name和language,而不是key和value。这让人更容易明白循环的作用。
输入中的代码让Python遍历字典中的每个键值对,并将键赋给变量name,将值赋给变量language。
5.3.2遍历字典中的所有键
输入
在这里插入图片描述
输出
在这里插入图片描述
在不需要使用字典中的值时,方法keys()很有用。for … 处的代码行让Python提取字典 favorite_languages 中的所有键,并依次将他们赋给变量name。
遍历字典时,会默认遍历所有的键。因此,如果将上述代码中的:
for name in favorte_langguages.key():
替换为:
for name in favorte_langguages.key():
5.3.3 按特定顺序遍历字典中的所有键
输入
在这里插入图片描述
输出
在这里插入图片描述
5.3.4遍历字典中所有值
输入
在这里插入图片描述
输出
在这里插入图片描述
这种做法提取字典中所有的值,而没有考虑是否重复。涉及的值很少时,这也许不是问题,但如果被调查者很多,最终的列表可能包含大量重复项。为剔除重复项,可使用集合(set)。集合中的每个元素都必须是独一无二的:
输入
在这里插入图片描述
输出

在这里插入图片描述
通过对包含重复元素的列表调用set(),可让Python找出列表中独一无二的元素,并使用这些元素来创建一个集合。
5.4 嵌套
5.4.1 字典列表
输入
在这里插入图片描述
输出
在这里插入图片描述
在下面的示例中,使用range()生成了30个外星人:
输入
在这里插入图片描述
输出
在这里插入图片描述
range()返回一系列数,其唯一的用途是告诉Python要重复这个循环多少次。 每次执行这个循环时,都创建一个外星人。

必要时,可使用for循环和if语句来修改某些外形人的颜色。例如:要将前三个外星人修改为黄色、速度为中等且值为10分:
输入
在这里插入图片描述
输出
在这里插入图片描述
5.4.2 在字典中存储列表
输入
在这里插入图片描述
输出
在这里插入图片描述
如果函数调用print()中的字符串很长,可以在合适的位置分行。只需要在每行末尾都加上引号,同时对于除第一行外的其他各行,都在行首加上引号并缩进。

输入
在这里插入图片描述
输出
在这里插入图片描述

为了进一步改进这个程序,可在遍历字典的for循环开头添加一条if 语句,通过查看len(languages)的值来确地当前的被调查者喜欢的语言是否多种。
输入:
在这里插入图片描述
输出
在这里插入图片描述
5.4.3 在字典中存储字典
输入
在这里插入图片描述
输出
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值