为什么这个程序没有给出预期的输出

时间:2017-03-08 17:54:51

标签: python-3.x

我的代码:

n = int(input())
arr = []

for i in range(0,n):
    s = input().split()

    for i in range(1,len(s)) :
        s[i] = int(s[i])
        if s[0] == "append" :
            arr.append(s[1])
        elif s[0] == "insert" :
            arr.insert(s[1],s[2])  
        elif s[0] == "print" :
            print(arr)            
        elif s[0] == "reverse" :
            arr.reverse()               
        elif s[0] == "sort" :
            arr.sort()               
        elif s[0] == "pop" :
            arr.pop()               
        elif s[0] == "remove" :
            arr.remove(s[1]) 

INPUT:

12

插入0 5

插入1 10

插入0 6

打印

删除6

追加9

追加1

排序

打印

弹出

逆转

打印

预期输出:

[6,5,10]

[1,5,9,10]

[9,5,1]

我的输出:

(无输出)

1 个答案:

答案 0 :(得分:1)

if s[0] == "append"到代码末尾的所有行都缩进了一个级别太多,使它们成为将参数转换为int的循环的一部分。对于没有参数的命令,此循环执行零次,因此特别是" print"命令什么都不做。