如何在python中使用CMD传递的参数调用已定义函数
我的代码如下如何在python中使用CMD传递的参数调用已定义函数,python,Python,我的代码如下 def sum(): print "sum" def div(): print "div" test = sys.argv[1] 在终端上,我正在传递Python script.py sum 这里的sum是一个参数,即sys.argv[1] 它应该打印总和,但不打印任何内容。有人知道怎么做,或者有什么问题吗?应该是这样的。请注意,这会将函数定义分配给一个变量,然后执行is import sys def sum(): print "sum" def div()
def sum():
print "sum"
def div():
print "div"
test = sys.argv[1]
在终端上,我正在传递Python script.py sum
这里的sum
是一个参数,即sys.argv[1]
它应该打印总和,但不打印任何内容。有人知道怎么做,或者有什么问题吗?应该是这样的。请注意,这会将函数定义分配给一个变量,然后执行is
import sys
def sum():
print "sum"
def div():
print "div"
test = getattr(sys.modules[__name__], sys.argv[1])
test()
用法:
~> python my_script_name.py sum
你为什么认为这应该打印任何东西?您在哪里调用
sum
或div
?我通过传递参数调用sum,该参数将存储在test@DanielRosemanNo中,您没有。您知道如何通过它吗@DanielRosemannhanks@DanielRoseman感谢您的回答,但我得到了答案。它给出了错误测试=getattr(sys.modules[name],sys.argv[1])AttributeError:'module'对象没有属性'sum()'删除括号()
,查看我在@sachindobey添加的用法部分