在学Python的过程中,常常会遇到sys.argv[],它是什么意思,应该怎么用呢?
- Sys.argv[]是用来获取命令行参数的,它是个列表.
- len(sys.argv)得到参数的个数
- sys.argv[0]获得的是脚本的名字
如何使用sys.argv?
下面一个简单的例子
1.首先要导入sys模块
import sys
2.用os.system接收命令行参数
import sys,os
os.system(sys.argv[1])
3.这个例子是简明python教程上的,明白它之后你就明白sys.argv[]了,请看注释
# -*- coding:utf-8 -*-
import sys
def readfile(filename): # 从文件中读出文件内容
'''''Print a file to the standard output.'''
f = open(filename)
while True:
line = f.readline()
if len(line) == 0:
break
print(line) # notice comma 分别输出每行内容
f.close()
# Script starts from here
if len(sys.argv) < 2:
'No action specified.'#如果参数个数小于2,nothing
sys.exit()
if sys.argv[1].startswith('--'):
option = sys.argv[1][2:] # 读取除了前两个字符(即两个破折号)后的字符串
if option == 'version': # 当命令行参数为-- version,显示版本号
print("version 1.2.0")
elif option == 'help': # 当命令行参数为--help时,显示相关帮助内容
help_str = "Any number of files can be specified.\n" \
"Options include:\n" \
"--version : Prints the version number\n" \
"--help : Display this help\n"
print(help_str)
else:
print("Unknown option.")
sys.exit()
else:
for filename in sys.argv[1:]: # 当参数为文件名时,传入readfile,读出其内容
readfile(filename)