用Python自动化那些无聊的东西:嵌套的字典和列表

2024-04-25 23:27:22 发布

您现在位置:Python中文网/ 问答频道 /正文

这本书中有一本词典中的一个例子,我正在努力理解它。在

例如,这里有一个程序,它使用一个包含其他字典的字典来查看谁带什么去野餐。函数的作用是:读取这个数据结构,并计算所有来宾带来的项目总数。

allGuests = {'Alice': {'apples': 5, 'pretzels': 12},
             'Bob': {'ham sandwiches': 3, 'apples': 2},
             'Carol': {'cups': 3, 'apple pies': 1}}
def totalBrought(guests, item):
    numBrought = 0
    for k, v in guests.items():
        numBrought = numBrought + v.get(item, 0)
    return numBrought
print('Number of things being brought:')
print(' Apples    ' + str(totalBrought(allGuests, 'apples')))

我的问题: 对于k,v In客人.物品()什么客人.物品()代表什么?如果它代表AllguestDictionary,那么什么是v?子字典(dictionary中的dictionary)还是它只表示数字(子字典中的值-5、12等)?换句话说,是“爱丽丝”和“苹果”:5,“椒盐卷饼”:12?在


Tags: 程序dictionary字典代表item物品例子词典
1条回答
网友
1楼 · 发布于 2024-04-25 23:27:22

In other words is k 'Alice' and v {'apples': 5, 'pretzels': 12}?

是的。在

.items()不检查它生成的值,如果这些值是字典,则进一步分解它们。更一般地说,字典(或list、set、tuple等)不知道它是嵌套的,也不太关心它的值。allGuests的行为和其他字典一样。在

相关问题 更多 >