龙空技术网

三种方式通过命令行参数进行函数传参,更加灵活

淡墨流年生活号 189

前言:

此刻小伙伴们对“python调用其他py文件传参数”大概比较关注,看官们都需要知道一些“python调用其他py文件传参数”的相关知识。那么小编同时在网络上网罗了一些有关“python调用其他py文件传参数””的相关文章,希望朋友们能喜欢,小伙伴们快快来学习一下吧!

有时在函数中传参时,传入的参数是不规则,且是固定的格式,不是很灵活,那么就需要通过命令行参数进行传参,这样传入的参数会根据自己的需要,传入不同的参数。

第一种方式:sys.argv

此方式传参较为简单,只需要在后面输入随意的参数,并且可以多输入几个参数,通过命令:

import sysdef test1():    print(sys.argv)>python test.py  参数1  参数2 参数3#输出结果['test.py', '参数1', '参数2', '参数3']

第二种方式:argparse模块

此方式较为麻烦,不过可以指定传参的变量名,传参类型,默认值,以及是否是必须输入,这样可以有效的对某个参数是否是必须的,做了一个限制,可以防止程序出错。

import argparsedef test2():    parser = argparse.ArgumentParser(description="这是参数测试对象")    parser.add_argument('--a', dest='inte', default=None,type=int,required=True)    print(parser.description)    args = parser.parse_args()    print(args.inte)   >python test.py  --a 12321#输出结果 这是参数测试对象12321    

第三种方式:fire模块

通过这个模块,也可以随意的进行传参。

import firedef test3(name:str,age:int):    print(name,age)if __name__ == '__main__':    fire.Fire(test3)>python test.py -name zhangsan -age 20#输出结果zhangsan 20

总结:以上就是三种方式进行python命令行传参的方式,在某些场合下,通过命令行的方式运行函数是由一定的需要的。最起码不用打开修改代码了,直接运行该py文件就行。如果喜欢我的分享,可以vx关注淡墨流年pyseo!

标签: #python调用其他py文件传参数