Python:'int'对象不可订阅

时间:2012-08-07 04:38:31

标签: python object int

我在这里收到错误,我想知道你们中是否有人能看到我哪里出错了。我几乎是python的初学者,无法看到我出错的地方。

temp = int(temp)^2/key
for i in range(0, len(str(temp))):
    final = final + chr(int(temp[i]))

“temp”由数字组成。 “钥匙”也是由数字组成的。这里有什么帮助吗?

2 个答案:

答案 0 :(得分:5)

首先,您将temp定义为整数(同样,在Python中,^不是“幂”符号。您可能正在寻找**):

temp = int(temp)^2/key

但是你把它当作一个字符串对待了:

chr(int(temp[i]))
        ^^^^^^^

是否有另一个名为temp的字符串?或者您是否想要提取i数字,这可以这样做:

str(temp)[i]

答案 1 :(得分:0)

final = final + chr(int(temp[i]))

在该行 temp 仍为数字,因此请使用str(temp)[i]

修改

>>> temp = 100  #number
>>> str(temp)[0] #convert temp to string and access i-th element
'1'
>>> int(str(temp)[0]) #convert character to int
1
>>> chr(int(str(temp)[0]))
'\x01'
>>>