应用场景:
python开发Window程序时,若启动时需要通过接受外部传递的参数实现不同的功能时,可通过以下方式实现:
一、传递布尔值参数:
1、python工程主要用到的库:argparse (argparse是一个Python模块:命令行选项、参数和子命令解析器)
2、python代码创建解析器对象:
parser = argparse.Argumentparser(description = "定义一个解析器")
3、python代码添加解析属性:
parser.add_ageument ("isTrue","-b",action="store_true",help="传递一个布尔值",defalut = Flase)
args=paser.parse_args()
isTrue=args.isTrue
print("传递的布尔值为:"+isTrue)
4、打开Python编译(可通过pyinstaller将python代码转为exe程序包)的exe程序:
如通过window终端命令打开该python程序:
或 start pythonTest.exe -b
结果:
python程序执行结果:
传递的布尔值为:true
二、除可传递布尔值外,还可以传递其他类型的参数:
Int型:
parser.add_ageument ("intNumber",type="int",help="传递一个Int数据",defalut = 5)
调用方: start pythonTest.exe --intNumber 10
String 关键词:
parser.add_ageument ("name",help="传递一个名字")
调用方: start pythonTest.exe --name “张三”
add_argument()方法参数说明:
name or flags :一个命名或者一个选项字符串的列表,为add_argument的第一位参数,用来匹配不同的key值对应不同类型的参数。
action - 表示该选项要执行的操作
default - 当参数未在命令行中出现时使用的值
dest - 用来指定参数的位置
type - 为参数类型,例如int
choices - 用来选择输入参数的范围。例如choice = [1, 5, 10], 表示输入参数只能为1,5 或10
help - 用来描述这个选项的作用,给一个 ArgumentParser 添加程序参数信息是通过调用 add_argument() 方法完成的