为什么我得到一个“'int'对象是不可订阅的”错误?

时间:2014-11-10 14:38:09

标签: python python-3.x

我的代码:

y = []
x = 1
a = 1
count = 0
count2 = 1
while x == 1:
    z = int(input("input: " ))
    if z < 0:
        x = 0
    y.append(z)
length = len(y)
while a == 1:
    if z[count] > z[count2]:
        z[count], z[count+1] = z[count+1], z[count]
        count = count + 1
    if count == lenth:
        a = 0

我在代码的if z[count] > z[count2]:部分得到它。

3 个答案:

答案 0 :(得分:2)

z是一个整数(取自用户输入)。您可能希望使用y来代替您追加z的列表:

if y[count] > y[count2]:
    y[count], y[count+1] = y[count+1], y[count]

答案 1 :(得分:1)

您将z声明为int

z = int(input("input: " ))

然后你尝试索引它

if z[count] > z[count2]:

正如错误所说,你不能索引int,该操作没有任何意义。

我假设你的意思是这个?

if y[count] > y[count2]:

答案 2 :(得分:0)

z[count] > z[count2]    

此处z是一个整数,因为z = int(input("input: " ))会给你一个整数