一、基本概念
Python中,sys.argv是一个存储命令行参数的列表。列表中的每一个元素都是一个字符串,代表一个命令行参数。sys.argv列表中的第一个元素是当前Python脚本的名称。通过使用sys.argv,我们可以向Python脚本传递参数并进行相应的处理。
二、sys.argv常见用法
使用sys.argv解析命令行参数的过程大致可以分为以下几个步骤:
1. 导入sys模块
import sys
2. 获取命令行参数列表
在Python中,可以使用sys.argv获取命令行参数列表。列表中的第一个元素是当前Python脚本的名称,第二个元素是第一个命令行参数,以此类推。具体使用方法示例:
import sys
# 输出命令行参数列表
print(sys.argv)
执行以上代码,假设脚本名为sysargv.py,命令行中执行的命令为:
python sysargv.py arg1 arg2 arg3
则输出结果为:
['sysargv.py', 'arg1', 'arg2', 'arg3']
3. 处理命令行参数
通过sys.argv获取到命令行参数列表后,我们可以通过对其进行一些处理达到我们想要的效果。
举例:查找字符串
假设有一个包含多行文本的文件file.txt,现在我们要查找文件中包含特定字符串的行(比如"test"),并将这些行输出到控制台。
代码实现如下:
import sys
# 获取文件名和查找的字符串
filename = sys.argv[1]
search_str = sys.argv[2]
# 打开文件进行查找
with open(filename) as f:
for line in f:
if search_str in line:
print(line, end='')
在命令行中执行以下命令:
python search.py file.txt test
将会输出file.txt中包含"test"字符串的所有行。
三、小结
sys.argv是Python中常用的命令行参数解析工具,通过sys.argv我们可以向Python脚本传递命令行参数并进行相应的处理。熟练掌握sys.argv的使用能够提高 Python 脚本的灵活性,使其更加智能实用。