【发布时间】:2019-03-11 07:42:09
【问题描述】:
所以我刚刚开始学习 python 和一般的编程新手。我正在编写代码来回答 Hackerrank 学习代码“列表” (Here)
我在使用列表时遇到了问题,我已经编写了一个程序来多次编辑列表,但由于某种原因,如果我使用 .insert() 它可以处理某些输入,但不能处理其他输入。如果解释不当,我深表歉意。
如果我输入“insert 1 55”,它会将 55 插入 ML1,但是如果我输入“insert 1 48”,它会将 1 添加到 ML1,所以我很困惑为什么它对不同值的反应不同输入。
任何帮助将不胜感激!
import math
ML=[]
while True:
try:
List1=input().split()
List2=map(int, List1[1:])
List3=list(set(List2))
if List1[0]=="insert":
ML.insert((List3[0]), (List3[1]))
elif List1[0]=="print":
print(ML)
elif List1[0]=="remove":
ML.remove(List3[0])
elif List1[0]=="append":
ML.append(List3[0])
elif List1[0]=="sort":
ML.sort()
elif List1[0]=="pop":
ML.pop()
elif List1[0]=="reverse":
ML.reverse()
else:
pass
except ValueError:
print("oops")
输出:
插入 1 55
打印
[55]
插入 1 44
打印
[55, 44]
插入 1 48
打印
[55, 44, 1]
【问题讨论】:
标签: python-3.x list while-loop insert try-catch