字典中的Python决策逻辑和循环

时间:2018-10-23 01:32:31

标签: python loops dictionary

我目前只能从事Python的编码工作。我必须制作一个包含10个单词的python字典,应提示用户搜索一个单词,程序将搜索该术语,如果找到匹配项,则显示定义。我尽力获得输入,但是在是否使用elif或用于什么上等方面陷入困境。我需要使用循环,但是我被卡住了。整天都在。这是我写的代码。

# 1. The user should be prompted for a word to search for.
# 2. The program will then search for the term, and if a match is found, display
# the definition.
# 2. You should demonstrate the following concepts: dictionaries, loops, decision logic, user input, and other concepts you feel are necessary.

x = {"Milwaukee": "Bucks", "Oklahoma": "Thunder" , "Portland": "Trailblazers", "Miami": "Heat" , "Boston" : "Celtics", "New York" : "Knicks" ,  "Orlando" : "Magic" , "Houston" : "Rockets" , "Chicago" : "Bulls" , "Indiana" : "Pacers"} 
team = input("enter team:")

2 个答案:

答案 0 :(得分:3)

team = input('enter team: ')
if team in x:
    print(x[team])
else:
    print('not found')

不需要循环。

似乎我弄错了-我以为您打算使用键来查找字典,但是显然您正在尝试使用团队来查找城市。这样就可以了:在进行所有操作之前,先执行以下操作:

x = {v:k for k, v in x.iteritems()}

这将使字典team: city而不是city: team,并且上面的代码仍然有效。

答案 1 :(得分:0)

尽管Rocky的答案可能是最简单的方法,但是如果赋值需要,则使用循环,您可以循环浏览字典中的每个项目以手动比较每个项目:

wrapper.java.additional.7=-Dhttp.proxyHost=proxy
wrapper.java.additional.8=-Dhttp.proxyPort=3128
wrapper.java.additional.9=-Dhttps.proxyHost=proxy
wrapper.java.additional.10=-Dhttps.proxyPort=3128

如果您需要显示匹配项,无论用户是进入城市还是进入团队,都可以同时进行以下两项检查:

team = input('enter team name: ')
for item in x:
  if x[item] == team:
    print(item)