第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

Python在列表中的dict值中計(jì)數(shù)項(xiàng)目

Python在列表中的dict值中計(jì)數(shù)項(xiàng)目

猛跑小豬 2021-03-18 14:09:40
Python 3.3,具有這種形式的鍵值對(duì)的字典。d = {'T1': ['eggs', 'bacon', 'sausage']}這些值是可變長(zhǎng)度的列表,我需要遍歷列表項(xiàng)。這有效:count = 0 for l in d.values():    for i in l: count += 1但這很丑。必須有一種更Python化的方式,但是我似乎找不到。len(d.values())產(chǎn)生1。這是1個(gè)列表(DUH)。從此處嘗試使用Counter會(huì)產(chǎn)生“無(wú)法散列的類型”錯(cuò)誤。
查看完整描述

3 回答

?
Qyouu

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)度。


查看完整回答
反對(duì) 回復(fù) 2021-03-29
?
FFIVE

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


查看完整回答
反對(duì) 回復(fù) 2021-03-29
?
慕森王

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)


查看完整回答
反對(duì) 回復(fù) 2021-03-29
  • 3 回答
  • 0 關(guān)注
  • 259 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)