python脚本在命令行中传递参数(附字符查找小案例)

来源:互联网 发布:淘宝店铺数据分析软件 编辑:程序博客网 时间:2024/06/10 19:11

用命令行调用python脚本的时候,如果想往脚本中传递参数的时候,参数会被python解释器接收,并转换为一系列的字符串,放在sys模块中的argv列表中。因此,可以使用argv[0]来引用第一个参数。

在命令行中调用,argv[0]中存放的是该脚本的完整路径,如下代码:

#encoding:gbkimport sysprint sys.argv[0]print sys.argv[1]
运行结果如下:

可以看到第一个参数存放的是脚本的路径,第二个参数起才是我们传递的参数


以下是一个案例,用于查找指定文件中是否包含某个字符串的脚本(使用gbk编码的原因在于,window中默认使用的是gbk编码):

#coding=gbkimport sysdef findFile():    try:        Str = sys.argv[1]        path = sys.argv[2]    except:        Str = None        path = None        if path == None or Str == None:        print "缺少相应参数..."        print "使用方法: 命令(findFile.py) + 要查找的字符串  +  文件路径..."    else:        try:            i = 0            fi = open(path)            for txt in fi:                i+=1                if txt.find(Str) != -1:                    info = txt.replace('\n','') + ' 所在行:' + str(i)                    print info            fi.close()        except:            print '路径不存在...'        findFile()

大致的运行如下:


参考地址:http://jingyan.baidu.com/article/647f01159e55ea7f2148a8be.html



0 0
原创粉丝点击