介绍
一个专门用于命令行参数解析的模块
使用
python
import optparse
op = optparse.OptionParser()
# 添加选项
op.add_option("--s", dest="server") # --或者-都可以
op.add_option("--p", dest="port")
# 解析参数
options, args = op.parse_args()
print(options)
print(args)
# 输入 python python--optparser.py
'''
{'server': None, 'port': None}
[]
'''
# 输入python python--optparser.py --s 127.0.0.1 --p 8080 如果参数是--,那么命令行也要输--,参数是-,命令行输-
'''
{'server': '127.0.0.1', 'port': '8080'}
[]
'''
# 输入python python--optparser.py --s 127.0.0.1 --p 8080 古名地盆 芙兰朵露斯卡雷特
# 没有指定的会放在args里面
'''
{'server': '127.0.0.1', 'port': '8080'}
['古名地盆', '芙兰朵露斯卡雷特']
'''
# 虽然显示的是个字典形式,但实际上不是字典,而是一个对象
try:
import traceback
print(options['server'])
except Exception:
print(traceback.format_exc())
'''
Traceback (most recent call last):
File "python--optparser.py", line 30, in <module>
print(options['server'])
TypeError: 'Values' object is not subscriptable
'''
# 所以只能通过.来获取
print(options.server)
print(options.port)
'''
127.0.0.1
8080
'''