如何解决如何使用getattr在列表中给出操作参数?
if __name__ == '__main__':
N = int(input())
main_tab = []
for _ in range(N):
operation,*line = input().split()
if(operation == 'insert'):
index = int(line[0])
value = int(line[1])
main_tab.insert(index,value)
elif(operation == 'print'):
print(main_tab)
elif(0 <= index < len(line)):
getattr(main_tab,operation)(line[0])
else:
getattr(main_tab,operation)()
在删除操作过程中出现错误
Traceback (most recent call last):
File "Solution.py",line 15,in <module>
getattr(main_tab,operation)(line[0])
ValueError: list.remove(x): x not in list
但是 line[0] 在这种情况下是 6。操作是删除,所以它应该只做 main_tab.remove(6)。 虽然把 6 而不是 line[0] 它完美地工作,但我需要动态使用参数。我做错了什么?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。