首页 > 解决方案 > 将变量中的值与 Python 中的字典进行比较

问题描述

我有一个 Python 字典,其中包含汽车的名称、颜色和汽车数量,以及当前有多少库存(以下是一些示例):

cardict = {
    'Ferrari': {'Colour': 'Red', 'Carcount': 0},
    'Lambo': {'Colour': 'Yellow', 'Carcount': 0},
    'Mustang': {'Colour': 'Black', 'Carcont': 0},
}

我有一个名为的变量stock,它存储了许多不同车型的名称。如果在变量中找到类似的汽车模型'Ferrari',我希望它可以将变量与字典进行比较,如果'Ferrari'在变量中找到,比如说 3 次,我希望字典中的计数从0变为变为3,我正在寻找我可以做到这一点。

更新编辑:

汽车的名称来自包含数百辆不同汽车的文本文件,我使用“with open”打开文本文件,然后 if car.startswith“Ferrari”将其变为变量。我使用 int(car[15:]) 来删除我不需要的其他文本,只显示放入变量“stock”的汽车名称。

此外,当我打印到控制台时,会打印 'count' value: '{'Carcount': 0}'

for c in cardict: 
    print(cardict[c]) 

输出:

 '{'Carcount': 0}'

有没有办法我可以将值 '0' 打印到控制台而不是打印 {'count': } 部分?

例如:

0
2

标签: python

解决方案


stock = ["Ferrari", "Lambo", "Ferrari"]

for carname in cardict.keys():
    cardict[carname]['Carcount'] = stock.count(carname)

编辑:我想我现在明白你的编辑了。该变量stock包含单个汽车名称,而不是汽车名称列表。在这种情况下,这是我更新的代码:

stock = "Ferrari"
cardict[stock]['Carcount'] += 1

推荐阅读