-i
-is
-istring
-i string
-i "str ing"
长选项
--
号后面要跟一个单词。如果还有些选项的附加参数,后面要紧跟"=“,再加上参数。”="号前后不能有空格。
如以下是正确的:
--input=string
而这些是不正确的:
-- input=string
--input = string
--input= string
例子
test.py -i string
test.py --input=string
2.1 导入库
Python
中有 sys
和 getopt
这两个库来帮助我们获取和解析命令行参数
import sys
import getopt
2.2 获取命令行参数
利用 sys.argv
获取命令行参数:
argv = sys.argv
示例:
输入:
test.py -i string -d a b
返回:
[‘test.py’,‘-i’,‘string’,‘-d’,‘a’,‘b’]
可见,所有命令行参数以空格为分隔符,都保存在了列表中。
其中第1个为脚本的名字,不应算作参数的一部分,因此用 argv = argv[1:]
将它过滤掉。
2.3 解析命令行参数
示例:
opts, args = getopt.getopt(argv,‘hi:d’,[‘help’,‘input=’,‘description’])
短格式
h
后面没有冒号 :
,表示这是一个开关选项,后面不带参数;
p:
和 i:
后面有冒号,表示后面需要带参数
如:hi:d
长格式
help
后面没有等号 =
,表示这是一个开关选项,后面不带参数;
input=
有 =
,表示后面需要参数
如:['help','input=','description']
返回
函数返回两个列表:opts
和 args
。
返回值 opts
是个包含元组的列表,每个元组是分析出来的格式信息,每个元组为 ( 选项,附加参数 )
,比如 [('-i','string'),('-d','')]
,若是无附加参数,则附加参数为空值;
返回值 args
是个列表,包含那些没有 -
或 --
的参数,比如:['a','b']
。
获取参数
对分析出的参数进行判断是否存在,然后再进一步处理。
string = ‘’
desc = ‘’
for opt, value in opts:
if opt in [‘-h’,‘–help’]:
print(‘test.py -i string -d’)
elif opt in [‘-i’,‘–input’]:
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注Python)
g_convert/9f49b566129f47b8a67243c1008edf79.png)
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注Python)
![img](https://img-blog.csdnimg.cn/img_convert/149a97227549c227318f289d4c68d8af.jpeg)