我有一個清單,就像
myList= ['France', 'Brazil', 'Armenia']
和一本字典,就像
countryDict = {'Argentina':10, 'Spain':23, 'France':66, 'Portugal:10', 'Brazil':120, 'Armenia':99}
如果匹配串列,我如何列印字典中鍵的名稱,并用它列印值?
我試過
for name in countries_avg_dict:
if name in country_List:
print(countries_avg_dict[name])
但是這不起作用,有什么幫助嗎?
我收到一個錯誤是
DeprecationWarning: The truth value of an empty array is ambiguous. Returning False, but in future this will result in an error. Use `array.size > 0` to check that an array is not empty.
uj5u.com熱心網友回復:
您需要迭代myList并檢查其中的國家/地區是否在countryDict:
for country in myList:
if country in countryDict:
print(country, countryDict[country])
輸出:
France 66
Brazil 120
Armenia 99
uj5u.com熱心網友回復:
您不需要執行嵌套回圈來查找它們是否在字典中,只需使用bool()運算子即可查找元素是否存在,您可以在 try-except 中執行此操作以捕獲 KeyError 以防元素不存在'不存在于字典中
用于每個回圈:
myList= ['France', 'Brazil', 'Armenia', 'FakeCountry']
countryDict = {'Argentina':10, 'Spain':23, 'France':66, 'Portugal':10, 'Brazil':120, 'Armenia':99}
for item in myList:
try:
print(item, bool(countryDict[item]))
except KeyError:
print(item, False)
使用索引:
myList= ['France', 'Brazil', 'Armenia', 'FakeCountry']
countryDict = {'Argentina':10, 'Spain':23, 'France':66, 'Portugal':10, 'Brazil':120, 'Armenia':99}
for i in range(len(myList)):
try:
print(myList[i], bool(countryDict[myList[i]]))
except KeyError:
print(myList[i], False)
uj5u.com熱心網友回復:
我相信這可能會有所幫助:
>>> for k,v in countryDict.items():
... if k in myList:
... print(f"{k}: {v}")
...
France: 66
Brazil: 120
Armenia: 99
請讓我知道這是否適合您。~X
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/377189.html
