我想将一个字符串作为包含操作和数据的输入。我可以使用提供的字符串运行该命令吗?
例如:
在这里,我要求用户输入两次,并将使用数据执行操作。
new_list = []
for i in range(2):
data = input().split() # data = "append 1" , data = "append 2"
new_list.data[0](data[1]) # new_list.append(1) , new_list.append(1)
print(new_list)
在上面的程序,我执行操作append
的用户,其中,给予data = "append 1"
时i = 0
和data = "append 2"
时i = 1
。
这可能吗?
我假设第一个参数将始终是对象的函数。您可以使用getattr()
来获取 append 方法。
data = input().split()
getattr(new_list, data[0])(data[1]) # Case data[1] to an int or another type if needed
查看getattr()
文档!
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句