为了账号安全,请及时绑定邮箱和手机立即绑定

求解这是为啥?如图,感谢!

http://img1.sycdn.imooc.com//5a1d5e6e0001ebcf03280249.jpg

一直有个疑问,不知道能不能描述清楚。。

就拿任务的答案来说,for key in d这个我理解是依次取出d里面的元素并把元素赋值给key,然后执行for循环体把d里面的都表示出来,即'Adam':95...'Bart':59,就是说把这三个都表示出来,到这儿我也理解,我不懂的是在print key +':',d[key]这句里面,为什么key就只表示人名了呢?然后d[key]就表示分数了呢?正如前面的,key不是明明被赋值了人名加分数这个整体吗?这点不懂,求大神,也不知道我说的清楚不清楚。。。

正在回答

4 回答

d里面的'key:value'是个整体,'for Key in d'表示依次取出一个整体同时将首地址传送给Key(即'key:value'中的key地址传至Key),所以Key实际上是表示d中的键(即示例中的名字),而d[Key]才表示d中某个具体的值

1 回复 有任何疑惑可以回复我~
#1

Mickkl0 提问者

懂了!非常感谢!
2017-11-28 回复 有任何疑惑可以回复我~
#2

慕粉1549414062 回复 Mickkl0 提问者

key是键,value是值,d[key]是定位字典d的key键来找值(value)
2017-11-29 回复 有任何疑惑可以回复我~

key 确实是代表人名,但d{}本来就是定义的是根据key来查找对应的值,所以d[key]也就就可以查找出对应的分数,建议研究下d{}的定义。我也是才自学,说得不对的希望大家指点迷津。

1 回复 有任何疑惑可以回复我~
#1

Mickkl0 提问者

三克油!
2017-11-28 回复 有任何疑惑可以回复我~

for 语句针对dic类型,遍历的每一项只能是key(程序就这样,要接受着去理解),这个key只表示键值对的键,所以key只表示人名了,而当你要去人名对应的分数,也就是value得时候,就只能通过字典的查找d[key]来取值了。希望对你有帮助。

2 回复 有任何疑惑可以回复我~
#1

Mickkl0 提问者

三克油!
2017-11-28 回复 有任何疑惑可以回复我~

教程里面说了,for循环出来的只有key,所以得用d[key]来获取对应的value....

1 回复 有任何疑惑可以回复我~
#1

Mickkl0 提问者

三克油!
2017-11-28 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
初识Python
  • 参与学习       758623    人
  • 解答问题       8667    个

学python入门视频教程,让你快速入门并能编写简单的Python程序

进入课程

求解这是为啥?如图,感谢!

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信