我是靠谱客的博主 感性月亮,最近开发中收集的这篇文章主要介绍【Python】命令行参数解析模块汇总引言安装用法总结仓库参考,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

文章目录

  • 引言
  • 安装
  • 用法
    • sys.argv????
    • getopt
    • optparse
    • argparse????
  • 总结
  • 仓库
  • 参考


引言

Python共有四种常用的实现命令行参数解析的模块,本文是对这些模块的汇总。

  • sys.argv
  • optparse
  • getopt
  • argparse

安装

因为它们都是Python内置的标准库,所以无需安装。

用法

sys.argv????

sys.argv是实现命令行参数解析最简单的方式,它是传递给Python脚本的命令行参数的列表。特别地,argv[0]代表脚本名。


推荐

⭐⭐⭐⭐⭐

示例

# 1_sys.argv.py
import sys
def add(a, b):
return a+b
if __name__ == '__main__':
print(add(int(sys.argv[1]), int(sys.argv[2])))

运行

python 1_sys.argv.py 1 2

输出

3

getopt

getopt命令行参数解析模块的API设计与C引言的getopt()函数类似,这有助于在sys.argv中解析参数。但现在几乎没人使用了, 请用argparse模块替代。


推荐

⭐⭐⭐

示例

# 2_getopt.py
import sys, getopt
def add(a, b):
return a+b
if __name__ == "__main__":
opts, args = getopt.getopt(sys.argv[1:], "ab", ["a", "b"])
a = int(args[0])
b = int(args[2])
print(add(a, b))

运行

python 2_getopt.py -a 1 -b 2

输出

3

optparse

optparse是一个比getopt模块更方便,灵活,强大的库,用于解析命令行选项。


推荐

⭐⭐⭐⭐

示例

# 3_optparse.py
from optparse import OptionParser
def add(a, b):
return a+b
if __name__ == '__main__':
parser = OptionParser()
parser.add_option("-a", "--a", default=1, help="number a")
parser.add_option("-b", "--b", default=2, help="number b")
options, args = parser.parse_args()
a = int(options.a)
b = int(options.b)
print(add(a, b))

运行

python 3_optparse.py -a 1 -b 2

输出

3

argparse????

argparse让编写用户友好的命令行界面变得容易。值得注意的是,argparse是基于optparse编写的,因此两者在用法上非常相似。


推荐

⭐⭐⭐⭐⭐

示例

# 4_argparse.py
import argparse
def add(a, b):
return a+b
if __name__=='__main__':
# 创建一个参数解析器
parser = argparse.ArgumentParser(description='argparse some integers.')
# 添加参数
parser.add_argument('-a', '--a', default=1, type=int, required=True, help='number a')
parser.add_argument('-b', '--b', default=2, type=int, required=True, help='number b')
# 参数解析
args = parser.parse_args()
# 应用实例
a = args.a
b = args.b
print(add(a, b))

运行

python 4_argparse.py -a 1 -b 2

输出

3

总结

如果参数量较小,只有一两个,推荐使用sys.argv,比如计算圆面积的程序,只需输入一个参数半径;如果参数量较大,比如三个以上,推荐使用argparse,比如搭建和训练深度学习模型需要传很多参数。

仓库

https://github.com/XavierJiezou/python-argument-parsing

参考

[1] https://docs.python.org/3/library/sys.html#sys.argv

[2] https://docs.python.org/3/library/getopt.html#module-getopt

[3] https://docs.python.org/3/library/optparse.html#module-optparse

[4] https://docs.python.org/3/library/argparse.html#module-argparse

最后

以上就是感性月亮为你收集整理的【Python】命令行参数解析模块汇总引言安装用法总结仓库参考的全部内容,希望文章能够帮你解决【Python】命令行参数解析模块汇总引言安装用法总结仓库参考所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(67)

评论列表共有 0 条评论

立即
投稿
返回
顶部