搜索引擎优化核心,seo托管,怎么推广公司网站,峨眉山移动网站建设看到别人执行一个支持命令行参数的python文件#xff0c;瞬间觉得高大上起来、牛逼起来#xff0c;那么如何编写一个带命令行参数的python脚本呢#xff1f;不用紧张#xff0c;下面将简单易懂地让你学会如何让自己的python脚本#xff0c;支持命令行参数。首先你要知道py…看到别人执行一个支持命令行参数的python文件瞬间觉得高大上起来、牛逼起来那么如何编写一个带命令行参数的python脚本呢不用紧张下面将简单易懂地让你学会如何让自己的python脚本支持命令行参数。首先你要知道python中的sys模块的一些功能import sysprint the number of python programs argument:,len(sys.argv)print the value of every argument is ,str(sys.argv)python sysargv.py argv1 argv2 argv3 argv4the number of python programs argument: 5the value of every argument is [sysargv.py, argv1, argv2, argv3, argv4]其次python程序使用命令行参数必不可少的模块就是getopt 模块,先看看一段代码import getoptargs -a -b -cfoo -d bar a1 a2.split()args[-a, -b, -cfoo, -d, bar, a1, a2]optlist, args getopt.getopt(args, abc:d:)optlist[(-a, ), (-b, ), (-c, foo), (-d, bar)]args[a1, a2]使用long_optionss --conditionfoo --testing --output-file abc.def -x a1 a2args s.split()args[--conditionfoo, --testing, --output-file, abc.def, -x, a1, a2]optlist, args getopt.getopt(args, x, [condition, output-file, testing])optlist[(--condition, foo), (--testing, ), (--output-file, abc.def), (-x, )]args[a1, a2]最后实战一个例子吧!import getopt,sysdef main():try:opts,argsgetopt.getopt(sys.argv[1:],hi:o:v,[help,infile,outfile])except getopt.GetoptError as error:print str(error)usage()sys.exit(2)infileNoneoutputNoneverboseFalsefor key,value in opts:if key-v:verboseTrueelif key in (-h,--help):print sysargv.py -i -o print or sysargv.py --infile --outfile elif key in (-i,--infile):infile valueelif key in (-o,--outfile):output valueprint inputfile:, infileprint outputfile:, outputprint verboseif __name____main__:main()测试结果C:\Python27python sysargv.py --helpsysargv.py -i -o or sysargv.py --infile --outfile inputfile: Noneoutputfile: NoneFalseC:\Python27python sysargv.py -hsysargv.py -i -o or sysargv.py --infile --outfile inputfile: Noneoutputfile: NoneFalseC:\Python27python sysargv.py -i inputfile1 -o ouputfile2inputfile: inputfile1outputfile: ouputfile2FalseC:\Python27python sysargv.py -i inputfile1inputfile: inputfile1outputfile: NoneFalseC:\Python27python sysargv.py -o outputfile1inputfile: Noneoutputfile: outputfile1FalseC:\Python27python sysargv.py -o outputfile1 -vinputfile: Noneoutputfile: outputfile1TrueC:\Python27python sysargv.py --infile inputfile --outfile outputfile1 -vinputfile: inputfileoutputfile: outputfile1True