文章目录(Table of Contents)
前言
之前我们讲过自动生成命令行的工具,python Fire 介绍。下面看一下如何来自己实现一下相同的功能。可以注意一下这里类的写法。
实现方式
下面放一段比较常用的,用来解析命令行参数的类,可以很方便解析命令行的参数;
- import sys
- class Args(object):
- """
- 命令行参数处理类
- """
- def __init__(self):
- # 保存命令行参数列表
- self.args = sys.argv[1:]
- def _value_after_option(self, option):
- """
- 内部函数,用来获取跟在选项后面的值
- """
- try:
- # 获得选项位置
- index = self.args.index(option)
- # 下一位置即为选项值
- return self.args[index + 1]
- except (ValueError, IndexError):
- print('Parameter Error')
- exit()
- @property
- def config_path(self):
- return self._value_after_option('-c')
- @property
- def userdata_path(self):
- return self._value_after_option('-d')
- @property
- def export_path(self):
- return self._value_after_option('-o')
使用情况
下面来看一下使用的情况:
- if __name__ == '__main__':
- args = Args()
- configFile = args.config_path
- inputData = args.userdata_path
- outputData = args.export_path
- print('-c : ',configFile)
- print('-d : ',inputData)
- print('-o : ',outputData)
如下图所示,可以看到可以解析出各个参数后面的值;
- 微信公众号
- 关注微信公众号
- QQ群
- 我们的QQ群号
评论