簡體   English   中英

如何計算 python defaultdict 中特定鍵中的值的數量

[英]how to count the number of values in a specific key in a python defaultdict

我正在嘗試完成這個問題。 我不知道我要去哪里錯了..

輸入的第一行是一個數字,表示后面有多少對單詞(每對在單獨的行中)。 這些對的形式為 COUNTRY CITY,指定城市所在的國家/地區。 最后一行是城市名稱。 打印與該城市位於同一國家/地區的城市數量。

暗示。 使用字典。

例如,在輸入時:

6
UK London
US Boston
UK Manchester
UK Leeds
US Dallas
Russia Moscow
Manchester

output 必須是:3

from collections import defaultdict

n=input()
d=defaultdict(list)
city=' '



 for i in range(0,int(n)):
  kv=input().split()
  d[kv[0]].append(kv[1])




 for k1,v1 in d.items():
 if v1==city:
   print(len(k1))

你錯過了城市的輸入你需要檢查城市是否在列表中,然后計算有多少

from collections import defaultdict

n=input()
d=defaultdict(list)
city=' '



for i in range(0,int(n)):
  kv=input().split()
  d[kv[0]].append(kv[1])



city = input('Enter a city')
for k1,v1 in d.items():
 if city in v1:
   print(len(v1))

與其他人提到的一樣,您也需要為查詢城市輸入內容。 此外,您可以采用不同的方式處理此問題 - 您不需要defaultdict 由於您的查詢是一個城市,我們將其作為鍵存儲在字典中,值為國家。 然后我們可以找到我們需要得到哪個國家。 之后,只需在字典中計算該國家/地區的值即可。

n = input()
city_to_country = {}

for i in range(0, int(n)):
    kv = input().split()
    city_to_country[kv[1].rstrip()] = kv[0]

query_city = input()

target_country = city_to_country[query_city]

print(list(city_to_country.values()).count(target_country))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM