Python使用getopt处理命令行操作
Posted 小喽啰A
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python使用getopt处理命令行操作相关的知识,希望对你有一定的参考价值。
python 调用getopt示例:
# --*-- encoding:UTF-8 --*--
import sys
import getopt
# $ ./getopt_demo.py -a xxxx -b xxx -c --help lalalala
# print(sys.argv)
opts,args = getopt.getopt(sys.argv[1:], "a:b:c", ["help", "filename="])
# 输出返回
print(opts)
print(args)
先看下代码执行结果:
D:\\pystudy\\atom-py>python getopt_demo.py -a xxxx -b xxx -c --help --filename='a.txt' lalalala
[('-a', 'xxxx'), ('-b', 'xxx'), ('-c', ''), ('--help', ''), ('--filename', "'a.txt'")]
['lalalala']
然后看下getopt这个函数的原型
def getopt(args, shortopts, longopts = [])
这里面会接收三个参数
args:是从命令行接收到的参数。一般回事sys.argv[1:],因为命令行的第一个参数是脚本的文件名;
shortopts:这个是所处理参数的短格式。
# 短格式以一个英文字母作为一个操作,使用时在字母前加一个-
# 字母后面带有:表示该操作需要接收参数,使用的时候操作符和参数之间可以不加空格,也可以加
# 如果操作不需要参数,可以多个操作放在一起使用
"a:bc"
longopts:是可选参数
# 长格式是以一个单词标识一个操作,使用时在单词前面加上两个-
# 单词后面加=表示操作需要接收参数,使用时应在操作和参数之间加上= 比如: --filename=a.txt
["help", "filename="]
这个函数会返回两个结果
opts:就是操作的控制字符和参数的元组
args:就是没有操作的参数
以上是关于Python使用getopt处理命令行操作的主要内容,如果未能解决你的问题,请参考以下文章