gpt4 book ai didi

python - 如何将用户输入转换为函数参数?

转载 作者:太空宇宙 更新时间:2023-11-03 14:21:09 27 4
gpt4 key购买 nike

我正在尝试制作自定义命令行来控制机械臂。所以我希望能够运行程序并输入servoMove(arg1,arg2)并将arg1和arg2传输到函数servoMove中。

servoPos = [0,1,2,3,4]

def servoMove(servo,angle):
servoPos[servo] = angle
print(servoPos[servo])

def commands(cmd):
if cmd == 'servoMove('+arg1+','+arg2+')':
servoMove(arg1,arg2)
else:
print("[Error] - Unknown Command")

commands(input(""))

显然,下面的代码不适用于此。

    if cmd == 'servoMove('+arg1+','+arg2+')':
servoMove(arg1,arg2)

有人知道我该怎么做吗?

最佳答案

您可以使用正则表达式来解析命令。

import re
def commands(cmd):
m = re.match(r'servoMove\((\d+),(\d+)\)', cmd)
if m:
servoMove(int(m.group(1)), int(m.group(2)))
return
# Put similar tests for other commands here
# ...
print("[Error] - Unknown Command")

这是一种非常粗鲁的方法——如果用户没有完全正确地输入命令,它会提示该命令未知。如果您想要更强大的东西,您需要学习如何编写真正的解析器。或者使用更好的用户界面,例如 Tkinter 来实现用户可以填写的表单。

关于python - 如何将用户输入转换为函数参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47934626/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com