Python 命令行使用方式(通过命令行传递参数)+ 样例

一、引入相关库

与命令行相关的库有两个:

import getopt
import sys

二、使用样例

def main(argv):
    try:
        savePath = 'image.png'
        filenamePES = None
        x = None # 0
        y = None # 2
        opts, args = getopt.getopt(argv, "f:x:y:s:")
        for opt, arg in opts:
            if opt in ("-f"):
                filenamePES = arg
            elif opt in ("-x"):
                x = int(arg)
            elif opt in ("-y"):
                y = int(arg)
            elif opt in ("-s"):
                savePath = arg
        
        print("The filename is %s, the X-axis represents column %d of the file, and the Y-axis represents column %d of the file.", filenamePES, x, y)
        print("The picture save path is %s", savePath)

        while True:
            realTimeLine(filenamePES, x, y, savePath)

    except getopt.GetoptError:
        print(f"usage: {sys.argv[0]} -f <filenamePath> -x <X-axis> -y <Y-axis> -s <savePath>")
        sys.exit(1)


if __name__ == '__main__':
    main(sys.argv[1:])

命令行传递:

./test.py -f /home/test/test.log -x 0 -y 0 -s ./image.png

如上述代码:

  • 使用 sys.argv 可以获取到命令行输入的参数;
  • argv[0] 默认为 ./test.py;因此我们所传递的参数是从 argv[1] 开始;
  • 在main函数中使用 getopt.getopt() 方法,传递两个参数,第一个为命令行相关,第二个为相关短选项,初始化命令行解析方法;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

21岁被迫秃头

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值