Python模块学习-----optparse

作用:一种类似于dos命令行的一种设计模块,例如:dos命令中添加-f会触发一种事件

          可以自定义一些指令,用来完成某些操作

optparse.OptionParser()

optionparser()类

        --该类提供了optparse一些常用的方法

from optparser import OptionParser
parser = OptionParser()

       --parser.add_option()

                用来自定义指令

parser.add_option("-f", "--fil")
(option, params) = parser.parser_args()
print(option)
print(params)

         --两个参数,一个是命令的简写(-简写名称)一个是命令的全称(--全称名称)

        1)一个指令附加一条信息

(pytorch01) D:\编程项目\Python\svm_study>python test2.py -f 2
{'fil': '2'}
[]

        2)无指令附加信息

(pytorch01) D:\编程项目\Python\svm_study>python test2.py 1 2 3 4
{'fil': None}
['1', '2', '3', '4']

        3)一个指令附加多条信息

(pytorch01) D:\编程项目\Python\svm_study>python test2.py -f 1 2 3 4
{'fil': '1'}
['2', '3', '4']

        4)有效指令前附加信息

(pytorch01) D:\编程项目\Python\svm_study>python test2.py 1 -f 2 3 4
{'fil': '2'}
['1', '3', '4']

        5)综合指令

(pytorch01) D:\编程项目\Python\svm_study>python test2.py 1 -f 2 3 x=4
{'fil': '2'}
['1', '3', 'x=4']

综上:

        parser.parser_args()返回的是一个字典类型数据,其中的key值由定义进行确定,有则记录,无则由params全部打包带走

        注:parser.parser_args([可以自行指定命令及对应数据]),此时输入其他参数无效,也不会被params打包带走

parser.add_option("-f", "--file")
(options, args) = parser.parse_args(["-f", "12"])
#与["-f12"]等价
print(options)
print(args)
(pytorch01) D:\编程项目\Python\svm_study>python test2.py -f 1 2 3
{'filename': '12'}
[]

上面的写法仅仅写了两个参数,下面我们来丰富一下其他参数

parser.add_option("-f", "--file", action="store", type="string", dest="filename", default="哈哈")
(options, args) = parser.parse_args()
print(options)
print(options.filename, type(options.filename))
print(args)
(pytorch01) D:\编程项目\Python\svm_study>python test2.py -f 1 2 3
{'filename': '1'}
12 <class 'str'>
['2', '3']

可以看到

        1)dest=""

        该字符串用来覆盖之前的key名,也就是选项名(真正的命名)

        2)action=""

         ①为store时:告诉optparse按照add_option时定义的那样解析,即必须有数据给指令。

         ②为store_true时:option后面有参数那么选项值为True,默认指令数据为True。

         ③为store_false时:option后面有参数那么选项值为False,默认指令数据为False。

        3)type=""

        该数据用来指定命令后面的参数类型

        4)default=""

        该数据用于指定一个默认参数给指令,一旦指定,即不会改变

        5)help=""

         该数据又来解释说明对应命令,该数据在parser.print_help时输出

        6)metavar=""

        该数据用来解释说明简称和全称,该数据在parser.print_help时输出

        --parser.print_help()

                用来输出整个命令的内容说明

USAGE = "one two three"
parser = OptionParser(USAGE)
parser.add_option("-f", "--file", action="store", type="string", dest="filename", default="hahaha", help="no help")
parser.print_usage()
parser.print_help()
(pytorch01) D:\编程项目\Python\svm_study>python test2.py -f 1 2 3
Usage: one two three

Usage: one two three

Options:
  -h, --help            show this help message and exit
  -f FILENAME, --file=FILENAME
                        no help

optionParser(标题的内容)

如果标题内容有输入,则parser.print_usage()就会调用这个内容,但是无论是否调用,该内容总会在窗口输出

以上内容参考:Optparse模块学习,optparse

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值