如何用参数执行python脚本文件?

how to execute a python script file with an argument?

本问题已经有最佳答案,请猛点这里访问。

Possible Duplicate:
Command Line Arguments In Python

例子:

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

我想让所有的Python脚本,例如"fistforsocad和_ replaced by CAN是一pass.bin"的问题。因为它是只有一个变量。

该实例脚本将运行指挥部样:

python itp.py FistForSOCAD_PASS.bin


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

1
2
3
4
5
6
7
8
9
10
11
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)

它给出:

1
2
3
4
5
6
7
8
9
10
11
$ 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了解更多信息


您可以使用sys.argv:

sys.argv

The list of command line arguments passed to a Python script. argv[0] is the script name (it is operating system dependent whether this is a full pathname or not). [...]

例子:

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


您可能需要查看argparse模块。