转换为int不能在Python中工作

时间:2014-09-30 03:03:07

标签: python

我正在尝试将时间值存储在数组中,但每次都会出现错误,即使我尝试将float转换为int也是如此。这是我的代码部分:

EndTimes = [0,0,0,0]
...
EndTimes[TakenSlots] = int(time.time() + n)

但它只是给出了这个错误:

[error] TypeError ( list indices must be integers )
[error] --- Traceback --- error source first
line: module ( function ) statement 
44: main ( craftTime ) EndTimes[TakenSlots] = tempInt

我试过这段代码只是为了看看它的价值是什么:

tempInt = int(time.time() + n)
print tempInt
EndTimes[TakenSlots] = tempInt

它只输出了1412046180(没有小数位,看起来应该是一个int)

有谁知道发生了什么?这是int()或我正在使用的数组类型的问题吗?提前谢谢!

1 个答案:

答案 0 :(得分:1)

这是因为列表索引(list [index] = value)必须是整数。 TakenSlots很可能不是int。

>>> l = [1,2,3]
>>> l[1.3] = 10
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: list indices must be integers, not float