Python中处理命令行参数

Python中处理命令行参数
getopt.getopt()来分析命令行参数。
getopt是用来分析命令行参数的模块。
模块中的函数:
getopt(args, options[, long_options])

args一般为sys.argv[1:]。

options为选项字母(以"-"开始)组成的字符串,如果某个选项字母带有参数,那么这个字母有要加":"号。

long_options为可选参数,它是一个字符串的List,用来表示长参数(以"--"开始),如果某个长参数带有参数,那么这个字母后面要加"="。

函数有两个返回:
第一个是(option, value)的list。option为带"-"的选项字母,或者是带"--"的长参数(无需严格匹配,例如--hl可匹配--help)。 如果option带有参数,那么会在value中给出,否则value为空。
第二个是函数未匹配到的参数。

Python文档中的例子:
import getopt, sys
def main():
    try:
        opts, args = getopt.getopt(sys.argv[1:], "ho:v", ["help", "output="])
    except getopt.GetoptError:
        # print help information and exit:
        usage()
        sys.exit(2)
    output = None
    verbose = False
    for o, a in opts:
        if o == "-v":
            verbose = True
        if o in ("-h", "--help"):
            usage()
            sys.exit()
        if o in ("-o", "--output"):
            output = a
    # ...
if __name__ == "__main__":
    main()
假如如此调用程序时:python 程序名.py -h -o abc --out def ghi
那么getopt.getopt()函数返回的结果大致是这样的。
(option, value)list中是:
[('-h', ''), ('-o', 'abc'), ('--output', 'def')]
args中是:
['ghi']
 
相关文章
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值