python - 如何将字符串转换为属性?

标签 python python-3.x

<分区>

我正在尝试制作一个非常简单的基于命令的 python 脚本,并从终端的输入中获取命令,但它没有检测变量的值...我不擅长解释,所以这是我的代码:

a = 0
b = 0

class commands:
    def add():
        a = int(input("first number "))
        b = int(input("second number "))
        print(a + b)

commander = commands
cmd = input("what command ")
commander.cmd()

当我运行它时,它给我一个错误提示 Exception has occurred: AttributeError 类型对象“commands”没有属性“cmd” 我对 Python 还是比较陌生,如果它真的很明显,我很抱歉。谢谢您,我们将不胜感激。

最佳答案

你只需要做:

getattr(commander, cmd)()

关于python - 如何将字符串转换为属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56821846/

相关文章:

python - 根据条件连接列表中的字符串和整数

python - 如何对列值为列表的 pandas DataFrame 进行子集化?

python - 将字典列表中具有相同值的项目添加到字典中

python-3.x - 如何在Python 3(Ubuntu 14.04)中安装PyQt5

python - 从 werkzeug 导入安全导入 werkzeug VS

python - Neo4django 关系查询不起作用

python - 这个极其简单的 numpy 脚本有什么问题?

python - 如何在 python tkinter 中显示从子窗口到父窗口的值?

python - 对数尺度的椭圆和多边形面片

python - 在 python 中计算嵌套总和