我的清单给出了相同的答案

时间:2017-05-28 18:26:09

标签: python list items

有人可以帮我吗?无论我输入什么号码,我都会得到相同的答案/输出

items = {'1': '2', '3': '4', '5': 'a'}
choice = input("Select a number: ")
if choice in items:
    the_choice = items[choice]
    print('you go right')
else:
    print('you go left')

1 个答案:

答案 0 :(得分:0)

根据评论,您希望如果用户键入1到5之间的数字或“a”,则打印“你走右”。 因此cypher.default_language_version=3.1应该是字符串列表,而不是字典或集合。列表由items定义。 然后,最好将输入([]转换为强制转换为字符串)。 最后,Python中的索引从0开始而不是1,因此您应该分配str(input())而不是items[choice-1](否则如果用户选择为5则会产生错误)。我还添加了另一个items[choice]语句,因为if对于列表没有任何意义。

给出了:

items['a']

如果用户写入1,2,3,4,5或'a',它将返回items = ['1', '2', '3', '4', '5', 'a'] choice = str(raw_input("Select a number: ")) if choice in items: if choice is not 'a': the_choice = items[int(choice)-1] print('you go right') else: print('you go left') ;所有其他情况you go right