如何创建一个带参数的命令行程序?

Sha*_*ady 1 python windows command-line

如何创建命令行,以便我可以在Windows上使用一些参数执行我的程序...

例如:

C:/Program/App.exe -safemode
Run Code Online (Sandbox Code Playgroud)

Sil*_*ost 9

看看标准库中的getoptoptparse模块,很多好东西也可以说更高级的argparse模块.

通常你只需要访问sys.argv.


Joe*_*erg 7

我觉得你也想生成一个可以独立运行的'可执行文件'....为此你使用py2exe

这是一个完整的example.py:

import optparse

parser = optparse.OptionParser()

parser.add_option("-s", "--safemode",
                  default = False,
                  action = "store_true",
                  help = "Should program run in safe mode?")

parser.add_option("-w", "--width",
                  type = "int",
                  default = 1024,
                  help = "Desired screen width in pixels")

options, arguments = parser.parse_args()

if options.safemode:
    print "Proceeding safely"
else:
    print "Proceeding dangerously"

if options.width == 1024:
    print "running in 1024-pixel mode"
elif options.width == 1920:
    print "running in 1920-pixel mode"
Run Code Online (Sandbox Code Playgroud)

这里有一个完整的setup.py将上面example.py变成example.exe(在dist子目录中):

from distutils.core import setup
import py2exe
import sys

sys.argv.append('py2exe')

setup(
    options = {'py2exe': dict(bundle_files=1, optimize=2)},
    console = ["example.py"],
    zipfile = None,
    )
Run Code Online (Sandbox Code Playgroud)