Scotty~~ 2024-08-07 22:12 采纳率: 50%
浏览 3

python获取不了命令行的参数

python获取不了命令行的参数

我编写了一个python脚本文件、一个bat的批处理文件,见下图

img

img

我在命令行参数中输入以下内容:

img

结果出现这样

img

为什么命令行可以通过%1%2%*获取参数,而我的python脚本获取不了,请各位帮忙看看,谢谢

  • 写回答

2条回答 默认 最新

  • a5156520 2024-08-08 09:01
    关注

    在批处理文件中,调用python脚本时,传入批处理获取到的参数列表即可。

    修改如下:

    orderarg.bat (如果直接在运行来执行批处理,则需要将这个批处理文件所在目录添加到系统环境变量path下):

    @echo off
    
    REM test argument
    
    echo Below is python
    
    rem  下面这行代码调用python脚本,需要传入批处理得到的命令行参数,即%*,否则直接调用脚本,则参数未传入,则不会打印参数列表
    rem 下面python脚本文件的绝对地址根据自己存放python脚本的地址来修改
    @python.exe f:\orderarg.py %*  
    
    echo below is orderthing
    echo first argv: %0
    echo second argv: %1
    echo third argv: %2
    echo all argv: %*
    
    pause
    
    

    orderarg.py:(这个文件的存放地址需要和批处理中调用python脚本的地址一致)

    import sys,os,time,os
    
    def main():
        print('参数列表: ',len(sys.argv),'个数')
        print('参数列表为:', str(sys.argv))
        print('脚本名为:',sys.argv[0])
    
        for i in range(1,len(sys.argv)):
              print('参数 %s 为 %s' % (i,sys.argv[i]))
    
    main()
    
    os.system('pause')
    
    
    

    img

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 8月7日

悬赏问题

  • ¥15 问题遇到的现象和发生背景 360导航页面千次ip是20元,但是我们是刷量的 超过100ip就不算量了,假量超过100就不算了 这是什么逻辑呢 有没有人能懂的 1000元红包感谢费
  • ¥30 计算机硬件实验报告寻代
  • ¥15 51单片机写代码,要求是图片上的要求,请大家积极参与,设计一个时钟,时间从12:00开始计时,液晶屏第一行显示time,第二行显示时间
  • ¥15 用C语言判断命题逻辑关系
  • ¥15 原子操作+O3编译,程序挂住
  • ¥15 使用STM32F103C6微控制器设计两个从0到F计数的一位数计数器(数字),同时,有一个控制按钮,可以选择哪个计数器工作:需要两个七段显示器和一个按钮。
  • ¥15 在yolo1到yolo11网络模型中,具体有哪些模型可以用作图像分类?
  • ¥15 AD9910输出波形向上偏移,波谷不为0V
  • ¥15 淘宝自动下单XPath自动点击插件无法点击特定<span>元素,如何解决?
  • ¥15 曙光1620-g30服务器安装硬盘后 看不到硬盘