python自动化测试-D5-学习笔记之一(argv的使用)
# 没有pycharm的时候,手动执行python文件的时候 这个python文件是需要传入参数的,则需要用到 argv 来进行判断,argv是将所有的参数都放到list里,如果想对python脚步传参数,用法是:python xx.py 参数
# list里的第一个元素默认是这个python文件的路径
# sys.argv[ ]其实就是一个列表,里边的项为用户输入的参数,关键就是要明白这参数是从程序外部输入的,而非代码本身的什么地方,要想看到它的效果就应该将程序保存了,从外部来运行程序并给出参数。
import sys,os
def clean_logs(path):
'''这个函数定义了,如果调用它的话,需要传递一个参数 '''
print('日志已经清理')
args = sys.argv
# '''当我们用命令执行这个函数所在的py文件的时候,就需要输入一个path参数,这个时候,我们就需要用到argv'''
if len(args)>1:# args[0] 的这个元素默认是python文件的路径
'''意味着,如果我们要这个代码写成 print(args[0]),执行的结果就是我们的python文件的路径,所以要做一个判断,如果参数大于1,证明需要输入其他参数'''
path = args[1]
print(path)
if os.path.isdir(path):# 判断是不是目录,目录有空格会报错
clean_logs(path)
else:
print('不是一个目录')
else:
print('运行这个python文件需要传入一个路径!\n''e.g. python clean_logs.py /usr/tomcat/logs')
如果我们的代码只有如下三行:
import sys,os
args = sys.argv
print(args)
执行的时候分别在 python eg05.py 后面不加参数和加上参数后打印结果如下: