资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

python中sys.argv[]方法如何使用-创新互联

python中sys.argv[] 方法如何使用,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

创新互联公司2013年成立,先为高港等服务建站,高港等地企业,进行企业商务咨询服务。为高港企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

sys.argv[]是用来获取命令行参数的,sys.argv[0]表示代码本身文件路径,因此要从第二个即sys.argv[1]开始取参数。

注意:参数是以空格分开的

创建一个名为sysargv.py的文件,内容如下:

import sys

print('the first  argv: ',sys.argv[0],'\n')#显示第一个参数

print('the second argv: ',sys.argv[1],'\n')#显示第二个参数

print('the third  argv: ',sys.argv[2],'\n')#显示第三个参数,以此类推

执行的结果如下:。

E:\lib>learnsysargv.py yang.txt yangqilong

the first  argv:  E:\lib\learnsysargv.py  --pyython文件的路径

the second argv:  yang.txt   --参数1

the third  argv:  yangqilong --参数2

官方教材中的一个例子,我修改了一下

import sys

print('the first  argv: ',sys.argv[0])

print('the second argv: ',sys.argv[1])

#print('the third  argv: ',sys.argv[2])

if len(sys.argv) < 2:

    print ('No action specified.')

    sys.exit()

解释一下下面IF语句的语法:判断参数1是否是以‘--’开头

if sys.argv[1].startswith('--'):

    ption = sys.argv[1][2:]//把参数1从第三个字符开始的字符串赋值给  option(去掉‘--’字符),直到参数1后面的空格。

    # fetch sys.argv[1] but without the first two characters

    if ption == 'v':

        print ('Version 1.2')

    elif option == 'h':

       print ('This program prints files to the standard output.\nAny number of files can be specified.\n\

Options include:\n\

--v : Prints the version number\n\

--h : Display this help')

程序输出结果:

E:\lib>sysargv.py  --h

the first  argv:  E:\lib\sysargv.py

the second argv:  --h

This program prints files to the standard output.

Any number of files can be specified.

Options include:

--v : Prints the version number

--h : Display this help

E:\lib>sysargv.py  --v

the first  argv:  E:\lib\sysargv.py

the second argv:  --v

Version 1.2

看完上述内容,你们掌握python中sys.argv[] 方法如何使用的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联-成都网站建设公司行业资讯频道,感谢各位的阅读!


当前标题:python中sys.argv[]方法如何使用-创新互联
URL地址:http://cdkjz.cn/article/hggoj.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220