Congratulate 发表于 2020-8-17 16:11:02

python中从input输入,如何调用函数

我的代码目的是,假设用户输入add,那么就能调用里面的add函数,完成里面的add函数中的所有指令。
我知道input转出来的类型是字符类型(然后报错就是str对象不可以调用),但怎么才能调用函数,我不知道。(所以我就卡在这里,怎么样才能完成调用函数这个目的)


def Initial_interface():
    x=input("请输入:")
    x()
def add():
    print("调用成功")

Initial_interface()

zltzlt 发表于 2020-8-17 16:11:56

用 exec

def Initial_interface():
    x=input("请输入:")
    exec(f'{x}()')
def add():
    print("调用成功")

Initial_interface()

Congratulate 发表于 2020-8-17 16:18:24

zltzlt 发表于 2020-8-17 16:11
用 exec

能不能通俗的讲下exec的用法呀{:10_254:}

zltzlt 发表于 2020-8-17 16:20:22

Congratulate 发表于 2020-8-17 16:18
能不能通俗的讲下exec的用法呀

exec 可以执行字符串中的语句,例如 exec('print("I love you")') 等价于 print("I love you")

Congratulate 发表于 2020-8-17 16:27:03

zltzlt 发表于 2020-8-17 16:20
exec 可以执行字符串中的语句,例如 exec('print("I love you")') 等价于 print("I love you")

那你的exec(f'{x}()')这段中的f'{x}()'
这个我看不懂,这是什么语法啊

zltzlt 发表于 2020-8-17 16:27:50

Congratulate 发表于 2020-8-17 16:27
那你的这段中的f'{x}()'
这个我看不懂,这是什么语法啊

这是 f-string 格式化,详情请见:https://blog.csdn.net/sunxb10/article/details/81036693

Congratulate 发表于 2020-8-17 16:30:34

zltzlt 发表于 2020-8-17 16:27
这是 f-string 格式化,详情请见:https://blog.csdn.net/sunxb10/article/details/81036693

好的,谢谢{:10_275:}
页: [1]
查看完整版本: python中从input输入,如何调用函数