【问题标题】:how to execute a python script file with an argument? [duplicate]如何使用参数执行 python 脚本文件? [复制]
【发布时间】:2012-09-07 12:54:28
【问题描述】:

可能重复:
Command Line Arguments In Python

例子:

itp.threads[0].memload(r"c:\FistForSOCAD_PASS.bin","0x108000P")
itp.threads[0].cv.cip = "0x108000"
itp.go()
itp.halt()

我想把上面的例子做成一个python脚本,“FistForSOCAD_PASS.bin”可以用一个参数代替。因为它只是可变的东西。

运行脚本的示例命令如下:

python itp.py FistForSOCAD_PASS.bin

【问题讨论】:

    标签: python


    【解决方案1】:

    有很多方法,一种是这种方法:

    import argparse
    
    parser = argparse.ArgumentParser(description='Process some integers.')
    parser.add_argument('integers', metavar='N', type=int, nargs='+',
                       help='an integer for the accumulator')
    parser.add_argument('--sum', dest='accumulate', action='store_const',
                       const=sum, default=max,
                       help='sum the integers (default: find the max)')
    
    args = parser.parse_args()
    print args.accumulate(args.integers)
    

    这给出了:

    $ prog.py -h
    usage: prog.py [-h] [--sum] N [N ...]
    
    Process some integers.
    
    positional arguments:
     N           an integer for the accumulator
    
    optional arguments:
     -h, --help  show this help message and exit
     --sum       sum the integers (default: find the max)
    

    阅读更多docs.python.org

    【讨论】:

      【解决方案2】:

      你可以使用sys.argv:

      sys.argv

      传递给 Python 脚本的命令行参数列表。 argv[0] 是脚本名称(这取决于操作系统是否为完整路径名)。 [...]

      例子:

      import sys
      if len(sys.argv) > 1:
          filename = sys.argv[1]
      

      【讨论】:

        【解决方案3】:

        您可能想查看argparse 模块。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2019-01-10
          • 1970-01-01
          • 2018-02-01
          • 1970-01-01
          • 1970-01-01
          • 2021-11-21
          • 2013-10-21
          相关资源
          最近更新 更多