3 回答

TA貢獻(xiàn)1786條經(jīng)驗(yàn) 獲得超11個(gè)贊
sum()每個(gè)字典值的使用和長(zhǎng)度:
count = sum(len(v) for v in d.itervalues())
如果您使用的是Python 3,則只需使用即可d.values()。
使用您的輸入示例和以下示例之一進(jìn)行快速演示:
>>> d = {'T1': ['eggs', 'bacon', 'sausage']}
>>> sum(len(v) for v in d.itervalues())
3
>>> d = {'T1': ['eggs', 'bacon', 'sausage'], 'T2': ['spam', 'ham', 'monty', 'python']}
>>> sum(len(v) for v in d.itervalues())
7
一個(gè)Counter不會(huì)幫助你在這里多,你是不是創(chuàng)建每個(gè)條目的計(jì)數(shù),你計(jì)算所有的值的總長(zhǎng)度。

TA貢獻(xiàn)1797條經(jīng)驗(yàn) 獲得超6個(gè)贊
>>> d = {'T1': ['eggs', 'bacon', 'sausage'], 'T2': ['spam', 'ham', 'monty', 'python']}
>>> sum(map(len, d.values()))
7

TA貢獻(xiàn)1777條經(jīng)驗(yàn) 獲得超3個(gè)贊
在Treehouse上做作業(yè)時(shí),我想到了這一點(diǎn)。至少(我知道)可以通過(guò)一個(gè)步驟使它變得更簡(jiǎn)單,但是對(duì)于初學(xué)者(如我自己)來(lái)說(shuō),理解此版本可能會(huì)更容易。
dict = {'T1': ['eggs', 'bacon', 'sausage'], 'T2': ['bread', 'butter', 'tosti']}
total = 0
for value in dict:
value_list = dict[value]
count = len(value_list)
total += count
print(total)
添加回答
舉報(bào)