美文网首页python3 - 专治「疑难杂症」基础小白学Python
用了那么久,殊不知真相是这样?—致所有的python3 学习者

用了那么久,殊不知真相是这样?—致所有的python3 学习者

作者: MLGirl | 来源:发表于2020-09-04 14:42 被阅读0次

今天,我们来好好聊一聊python3中的字典?

在写这片文章之前,我先默认大家都是有python基础的。话不多说,直接切入正题。

python3 强大之处之一在于其自带的数据结构类型,例如序列(列表list、元组tuple)、映射(字典)。字典中的元素都是以「键值对」的形式存在,当我们对字典进行遍历时,通常使用字典的keys()、values()、items() 方法。

案例如下:
现有一个字典tels,以姓名为键,以手机号为值。如果需要遍历字典中所有的姓名和手机号,自然少不了字典的items()方法。

tels = {''李浩":"17356472378","王键":"15567823456","赵敏":"15678652332"}
for name,tel in tels.items():
    print(name,tel)

输出结果:

李浩 17356472378
王键 15567823456
赵敏 15678652332

问题来了,tels.items()返回的结果类型是什么?
为了解决这个疑惑,小编开始进行各个网站的搜索,最终得出的结果有两种:

  • 以列表返回一个元组(键,值)数组
  • 迭代器

可以思考这样的两个问题?

  1. 如果tels.items()返回的结果是一个列表对象,系统岂不是要分配相应的空间存储tels.items()返回的结果。如果字典tel 本身占用的内存空间很大,那么tels.items()返回的结果也会占用很大的内存空间,这不是在浪费吗?
  2. 如果tels.items()返回的结果是一个迭代器,用最简单的方法可以验证-使用超过两次的循环。测试表明,tels.items()返回的结果可以被多次循环使用,即不是迭代器。

究竟是什么?看看官网是怎样揭露这层面纱的?


python3 官网.png
关于字典视图的介绍和使用.png

翻译成中文,大体可以理解:
tels.items()返回的结果是一种动态视图,当字典中的键值对发生了改变,视图立即随着改变,视图不占用任何的内存空间。

这个视图常用的函数和方法如下:

  • 使用len()函数获取视图的内容长度
  • 使用iter()函数将该视图转化为一个迭代器
  • 使用 in 可以判断该视图中是否存在某个键

现在恍然大悟了吧!同样字典的keys()、values()返回的结果也都是一个视图。

相关文章

  • 用了那么久,殊不知真相是这样?—致所有的python3 学习者

    今天,我们来好好聊一聊python3中的字典? 在写这片文章之前,我先默认大家都是有python基础的。话不多说,...

  • 致亲爱的你 开心了那么久,纠结了那么久,痛苦了那么久,郁闷了那么久,终于学会了淡然,认命。 有的时候你想走的路,未...

  • 第2模块第1章04文件处理——二进制模式

    python3中所有的字符串都是unicode. python3所有的字符串都是unicode f = open(...

  • QUINTI办公室转椅-有荣中国

    现代很多的工作者,整天都在办公室呆着,那么椅子就成为了他们的伴侣。而回到家吃饭看电视都是一致的坐着,殊不知,坐的久...

  • 每个能量都在颤动

    浑浑噩噩不知时间可贵,而殊不知在别人眼里时间是那么珍贵,固然我们年轻,但是却忽略了时光如白驹过隙,珍惜自己所拥有的...

  • 理财从哪里做起之感恩

    人们总是对自己所拥有的东西,感觉理所当然,而去羡慕别人所拥有的。殊不知,你拥有健康的身体也许是别人所羡慕的...

  • 190121

    编程最关键的就是实践,这一点对于基础薄弱的学习者而言尤其重要。这样的学习者会觉得自己还没有到实践的程度,殊不知,正...

  • 那么久,那么久

    言由心出,可人都怕了 忘的了,忘不了的 回忆还有温热,承诺已变了颜色 世事无常,时光开了一个缝隙 往日劝别人的话语...

  • 《我们去寻找一朵莲》

    用了那么久 我们去寻找一朵莲 你说 它在山的后面 被碧绿的湖水围绕 天空下的云朵 泛动着七色的光彩 用了那么久 我...

  • 真相的力量

    真相是这个世界最伟大的力量,有的时候我们迷失自己,找不到真相,或者不愿意接受真相,总是在逃避自己,这样我们就越...

网友评论

    本文标题:用了那么久,殊不知真相是这样?—致所有的python3 学习者

    本文链接:https://www.haomeiwen.com/subject/xwuzsktx.html