2024-09-30 20:19:52 发布
网友
我使用的是python3.6,我有一个名为文件.py,具有以下两个功能:
def country(countryName): print(countryName) def capital(capitalName): print(capitalName)
我需要从命令行调用这两个方法中的任何一个,但真诚地说,我不知道如何做到这一点,也不知道如何使用这种方式的参数。在
有人知道怎么做吗?在
你好!在
要在程序中使用命令行参数,可以使用阿尔格夫系统. Read more
import sys def country(countryName): print(countryName) def capital(capitalName): print(capitalName) method_name = sys.argv[1] parameter_name = sys.argv[2] getattr(sys.modules[__name__], method_name)(parameter_name)
运行程序:
输出:
delhi
您的输入参数方法\u name是字符串,因此无法直接调用。因此,我们需要使用getattr获取方法句柄。在
getattr
命令sys.modules[__name__]获取当前模块。是什么文件.py模块。然后我们使用getattr获取我们要调用的方法并调用它。我们将参数作为“(parameter_name)”传递给方法
sys.modules[__name__]
你可以有一个模块来检查文件.py,叫它执行器.py,并在中调整方法文件.py处理参数列表
在执行器.py公司名称:
import file import sys method = file.__dict__.get(sys.argv[0]) method(sys.argv[1:-1])
要在程序中使用命令行参数,可以使用阿尔格夫系统. Read more
运行程序:
^{pr2}$输出:
您的输入参数方法\u name是字符串,因此无法直接调用。因此,我们需要使用
getattr
获取方法句柄。在命令
sys.modules[__name__]
获取当前模块。是什么文件.py模块。然后我们使用getattr
获取我们要调用的方法并调用它。我们将参数作为“(parameter_name)”传递给方法你可以有一个模块来检查文件.py,叫它执行器.py,并在中调整方法文件.py处理参数列表
在执行器.py公司名称:
相关问题 更多 >
编程相关推荐