ValueError:[number]不在列表中,即使它和我相信的代码是正确的

时间:2016-01-18 03:22:23

标签: list input indexing numbers

当我执行下面的测试代码时,我得到它下面的错误:

my_numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

my_input = input("Pick a number from 1 to 10?")
number_index = my_numbers.index(my_input)
print(number_index)

ERROR -----

  

number_index = my_numbers.index(my_input)ValueError:'1'不在   列表

1 个答案:

答案 0 :(得分:0)

是这个蟒蛇?如果是这样,看起来就像是python 3,那么错误很简单:input给你一个字符串,你有一个整数列表,没有整数将等于一个字符串,所以当你通过my_input,一个字符串,index它在列表my_numbers中搜索匹配但是其中的所有内容都是整数,因此它会失败并给出错误。解决方案很简单,将输入转换为如下整数:

my_input = int( input("Pick a number from 1 to 10?") )

同样适用于其他语言,但细节可能会有所不同......