小盆友來請教辣么
# -*- coding: utf-8 -*- d = { ? ?95: 'Adam', ? ?85: 'Lisa', ? ?59: 'Bart' } for x in d: ? ?if d.get(x)==95: ? ? ? ?print x ==95是什么意思???
# -*- coding: utf-8 -*- d = { ? ?95: 'Adam', ? ?85: 'Lisa', ? ?59: 'Bart' } for x in d: ? ?if d.get(x)==95: ? ? ? ?print x ==95是什么意思???
2016-09-19
舉報
2016-09-19
你的代碼我覺得有錯誤,x會取key,d.get(x)的結果會是冒號后面的字符串,不可能會有if d.get(x)==95:這種情況。應該這樣才是對的吧:
# -*- coding: utf-8 -*-?
d = {95: 'Adam', 85: 'Lisa', 59: 'Bart'}
for x in d: ? ?
? ? if x==95:
? ? ? ?print d.get(x) ? ??
? ??
2016-09-19
這串代碼應該print不出來東西:for x in d 這里每次循環取出的x就是d里面每個item的key(95,85,59),d.get(x)就是用來得到該key對應的value(例如這里d.get(95)='Adam'),我們可以看到d 里面并沒有哪個value是95(注意別把key 和value弄混了),所以輸不出東西。
2016-09-19
d.get(x) == 95這句就有問題,現在分數,即95是作為key的,而get函數得到的是value的值,就是后面的'Adam',最后print后面接的表達式的返回值是一個bool值。表達的意思是,遍歷d,如果某個的value是‘Adam’,則判斷它的key是否是95