运行python脚本时传入参数

技术分享 2021-11-01

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

评论 (0)

发表评论

最多500字符

验证码

暂无评论

成为第一个评论的人吧!