3 回答

TA貢獻(xiàn)165條經(jīng)驗(yàn) 獲得超90個(gè)贊
d?=?{ ????'Adam':?95, ????'Lisa':?85, ????'Bart':?59 } ##?解釋,?先定義一個(gè)字典?d,?然后我們看一下?d.keys()?是什么東西。 prinit?d.keys() ['Lisa',?'Adam',?'Bart'] ##?解釋,由此看出,?d.key()?是這個(gè)字典?d?所有的key?組成的列表(注意,字典是無序的,所以取出的列表在不同 ##?的系統(tǒng)中有所不同)。 ##?那么下面的for?循環(huán)其實(shí)不難理解了。
在代碼格式外面,回答下 題主的疑問吧, d.keys() 為什么不用 中括號(hào)?
是這樣的, 現(xiàn)在各種高級(jí)語言的基本語法, 除了 語言本身自帶的 內(nèi)置函數(shù) 以外, 基本格式如下:
object.meths (), ? 對(duì)象.方法(). ?
在這里, 字典d 就是這個(gè)object, 而keys() 也就是我們要調(diào)用的方法。
通俗來說就是, 字典對(duì)象d, 有個(gè) keys() 方法,可以返回,由其 值組成的列表(Python 3.x 的返回有所變化)。
所以, 這個(gè)圓括號(hào) 就是這么個(gè)意思。

TA貢獻(xiàn)24條經(jīng)驗(yàn) 獲得超9個(gè)贊
如果要遍歷d 這個(gè)對(duì)象的話,可以用for in?
for x in d ?或者 for x ?in d.key(); ?兩者實(shí)現(xiàn)效果相同 ?

TA貢獻(xiàn)1條經(jīng)驗(yàn) 獲得超0個(gè)贊
你的目的是不是歷遍d,
d=?{ ????'Adam':?95, ????'Lisa':?85, ????'Bart':?59 } for?x?in?d: ????print?x?+?':',?d[x]
這樣就行了,解釋:for每次從d取出keys賦給x,而d[x],是很根據(jù)取出的keys找出對(duì)應(yīng)的value
添加回答
舉報(bào)