Python命令行参数
执行脚本时传入的Python命令行参数是输入参数。几乎所有编程语言都支持命令行参数。然后我们还有命令行选项,用于设置程序的某些特定选项。
Python 命令行参数
阅读Python命令行参数有很多种方式。其中最常见的三种是:
-
- Python 的 sys.argv
-
- Python 的 getopt 模块
- Python 的 argparse 模块
让我们浏览一个简单的程序,学习如何读取和使用Python命令行参数。
Python 的 sys 模块
Python的sys模块将命令行参数存储在一个列表中,我们可以使用sys.argv来访问它。这是一种非常有用和简单的方法,可以将命令行参数作为字符串读取。让我们来看一个简单的例子,使用Python的sys模块来读取和打印命令行参数。
import sys
print(type(sys.argv))
print('The command line arguments are:')
for i in sys.argv:
print(i)
Python的getopt模块
Python的getopt模块在解析命令行参数方面工作方式与C语言的getopt()函数非常相似。Python的getopt模块在解析命令行参数时非常有用,尤其是当我们希望用户输入一些选项时。让我们看一个简单的例子来理解这个概念。
import getopt
import sys
argv = sys.argv[1:]
try:
opts, args = getopt.getopt(argv, 'hm:d', ['help', 'my_file='])
print(opts)
print(args)
except getopt.GetoptError:
# Print a message or do something useful
print('Something went wrong!')
sys.exit(2)
Python的argparse模块
Python argparse模块是解析命令行参数的首选方式。它提供了许多选项,如位置参数、参数默认值、帮助信息、指定参数的数据类型等。在最简单的形式下,我们可以像下面这样使用它。
import argparse
parser = argparse.ArgumentParser()
parser.parse_args()
- sys.argv
- getopt module
- argparse module