我正在尝试让用户输入1,2,3,4,5,6。 然后让该整数与我的字典中的字符名称对齐。
characters = {
'Stark': '1',
'Greyjoy': '2',
'California': '3',
'Whitewalkers': '4',
'Knights Watch': '5',
'Dalthraki': '6'
}
print 'Type 1 for Stark'
print 'Type 2 for Greyjoy'
print 'Type 3 for Lannister'
print 'Type 4 for Whitewalkers'
print 'Type 5 for Knights Watch'
print 'Type 6 for Dalthraki'
choice = raw_input("> ")
if choice in characters:
print 'You\'ve selected', choice
else:
splash()
我希望在用户输入1之后打印我的脚本“你选择了Stark”。 谢谢你的帮助
答案 0 :(得分:3)
你有dict
向后:
characters = {
'1': 'Stark',
'2': 'Greyjoy',
'3': 'California',
'4': 'Whitewalkers',
'5': 'Knights Watch',
'6': 'Dalthraki',
}
print 'Type 1 for Stark'
print 'Type 2 for Greyjoy'
print 'Type 3 for Lannister'
print 'Type 4 for Whitewalkers'
print 'Type 5 for Knights Watch'
print 'Type 6 for Dalthraki'
choice = raw_input("> ")
if choice in characters:
print 'You\'ve selected', characters[choice]
else:
pass
答案 1 :(得分:1)
将你的词汇改为:
characters = {
'1':'Stark',
'2':'Greyjoy',
'3':'California',
'4':'Whitewalkers',
'5':'Knights Watch',
'6':'Dalthraki'
}
并使用:
if choice in characters:
print 'You\'ve selected {0}'.format(characters[choice])
else:
splash()
答案 2 :(得分:0)
你无法真正使用字典。您可以反转键/值对,然后使用字符[choice]来获取字符的名称。如果你想保留字典,你最好的选择是迭代项目
characterName = None
names = characters.items()
while characterName is None and names:
if names[0][1] == choice:
characterName = names[0][0]
else:
names = names[1:]
运行此命令后,您将在characterName中拥有一个字符名称,或者如果用户输入了无效条目,则该名称将为None。