Python sys命令行参数解析

Python sys命令行参数解析教程

Python 程序在运行时,是支持命令行参数的,即,我们在运行 Python 程序时,可以通过命令行指定运行时的参数,接着,我们在程序里,获取命令行参数内容,根据不同的参数,做不同的处理逻辑。

Python 的命令行参数解析共有三种方法,分别为:使用 sys 模块,使用 getopt 模块和使用 argparse 模块。

Python sys模块解析命令行详解

语法

for i in sys.argv: print i

说明

直接通过 sys.argv 获取所有的命令行参数,使用该方法获取命令行参数没办法获取指定 KEY 的命令行参数的值。

案例

获取所有命令行

使用 sys 模块获取命令行

import sys print("嗨客网(www.haicoder.net)") argc = len(sys.argv) print("Cmd line count =", argc) for argv in sys.argv: print("Cmd line :", argv)

程序运行后,控制台输出如下:

73_python命令行参数解析.png

我们使用 len 函数,传入 sys.argv 获取命令行参数的总个数,同时,使用 for in 循环遍历 sys.argv 获取每一个命令行参数。

我们在运行该程序时,需要切换到命令行运行模式,然后手动输入运行的命令行,并带上参数。我们发现,命令行参数的第一个总是文件名,后面才是我们输入的命令行内容。

获取指定索引的命令行参数

使用索引的形式可以获取指定索引的命令行参数

import sys print("嗨客网(www.haicoder.net)") print("Cmd 1 =", sys.argv[1]) print("Cmd 2 =", sys.argv[2]) print("Cmd 2 =", sys.argv[3])

程序运行后,控制台输出如下:

74_python命令行参数解析.png

我们可以通过 sys.argv 加上索引的形式可以获取指定索引处的命令行参数。

Python sys命令行参数解析总结

Python sys 模块解析命令行语法:

for i in sys.argv: print i