运行python脚本时传入参数

python实现类似于sh tools.sh start效果. 使用sys.argv最简单的方式如下:

def utils1():
    print(sys.argv[1])
if __name__ == '__main__':
    utils1()

运行python testtmp.py start得到输出start. 当然根据日常使用情况,写的完整一些就是:

class UtilClass:
    def __init__(self, argv=None):
        self.args = argv
    def prt(self):
        try:
            rec = self.args[1]
        except IndexError:
            rec = 'help'
        if rec == 'start':
            print('do start action')
        elif rec == 'stop':
            print('do stop action')
        elif rec == 'help':
            print('print help info')
        else:
            print('Unknown command:', rec)
def utildef(args=None):
    util = UtilClass(args)
    util.prt()
def utils():
    utildef(sys.argv)
if __name__ == '__main__':
    utils()

实现后的效果为:

D:\pyreadspace\justtest>python testtmp.py start
do start action
D:\pyreadspace\justtest>python testtmp.py stop
do stop action
D:\pyreadspace\justtest>python testtmp.py
print help info
D:\pyreadspace\justtest>python testtmp.py errorarg
Unknown command: errorarg

本文为原创文章,转载请注明出处。

原文链接:https://850406.xyz/post/运行python脚本时传入参数

评论(0)

还没有评论,来抢沙发吧~

验证码