打印与字典值

时间:2016-12-07 21:47:22

标签: python python-3.x dictionary

所以,我有一个函数应该要求用户输入一个大陆的名称,然后该函数应该通过Dictionary [" values"]找到大陆,然后搜索所有大陆字典中的国家["关键字"]打印列表中所有非洲大陆的国家/地区。

字典["值"] =各大洲的列表 字典["关键字"] =国家/地区列表

到目前为止,我有:

def filterCountriesByContinent(self):
    continentinp =  input(str("Please enter a continent: ")) #user input
    if continentinp  in  self.Dictionary["values"]: #check if input in Dictionary.values
        return print(self.Dictionary["keywords"]) #if in Dictionary.values, print off associated countries
    else:
        return print("That country is not in the Dictionary")

现在它只是打印出词典[" keywords"]中的所有国家/地区列表,包括那些不在输入大洲的国家/地区。

1 个答案:

答案 0 :(得分:1)

您首先需要一本大陆及其国家的字典。看起来应该是这样的。

{
  "North America": [
    "United States of America",
    "Canada",
    "Cuba",
    "Mexico"
  ],
  "South America": [
    "Brazil",
    "Argintina"
  ],
  "Europe": [
    "United Kingdom",
    "Germany"
  ],
  "Africa": [
    "Egypt"
  ]
}

然后Python代码就是这样。

dict_of_cont = # here is your dictionary
continent = raw_input("Enter the continent you wish to list the countries of: ")
for cont in dict_of_cont[continent.lower()]: # loop through the countries.
  print(cont + " is in " + continent.lower())

但请注意,您必须拼写国家/地区才能获得任何结果。