马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 Cool_Breeze 于 2020-9-10 19:56 编辑
getopt使用方法
#coding=utf-8
import sys
import getopt
# 模拟命令行
sys.argv = ['t.py', '-iabc.txt', '-ores.txt', '--sn=123123123', '12']
print(sys.argv)
# 'i:o:' 短命令,':' 为短命令必须带参数 写成:-i123.txt -i就等于123.txt
# 'io' 为短命令不带参数 写成:-i,-o
# ['in=, out=, nu='] 长命令,'=' 为长命令必须带参数 写成:--in=xxx --in就等于xxx
# ['in, out, nu'] 为长命令不带参数 写成: --in
opts, args = getopt.getopt(sys.argv[1:],'i:o:', ['input=', 'output=', 'sn='] )
print(opts) # 命令列表 [('-i', 'abc.txt'), ('-o', 'res.txt'), ('--sn', '123123123')]
print(args) # 命令不配的参数值 ['12']
input_s = ''
output = ''
sn = ''
for o,v in opts:
if o in '-i, --input':
input_s = v
elif o in '-o, --output':
output = v
elif o in '--sn':
sn = v
print('i = {}\no = {}\nsn = {}'.format(input_s, output, sn))
#i = abc.txt
#o = res.txt
#sn = 123123123
|