shell向python传参数

想要在shell中调用python脚本时实现:

1 python pyServer.py argu1 argu2 argu3

利用 sys.argv 即可读取到 相应参数:

1 # coding=utf-8
2 import sys
3 
4 if __name__ == __main__:
5     for i in range(0,len(sys.argv)):
6         print(sys.argv[i])

改进点的话:

# coding=utf-8
import sys

def parseArgument():
    if (len(sys.argv) < 2):
        raise Exception,u"arguments needed"
    
    #init
    argus = {}
    argus["gameName"] = u""
    argus["bSave"] = False
    argus["bpreBuild"] = False

    #set
    argus["gameName"] = sys.argv[1]
    for i in range(2,len(sys.argv)):
        if (sys.argv[i] == needSave):
            argus["bSave"] = True
        elif (sys.argv[i] == needPreBuild):
            argus["bpreBuild"] = True
    
    return argus

if __name__ == __main__:
    argus = parseArgument()
    print(u游戏名字为:{0}.format(argus["gameName"]))
    if argus[bSave]:
        print(u需要保存)
    else:
        print(u不需要保存)

    if argus[bpreBuild]:
        print(u打包预处理)
    else:
        print(u不打包预处理)

执行:

python test.py ox needPreBuild

结果:

游戏名字为: ox
不需要保存
打包预处理

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。