可能重复:
How to make python scripts executable on Windows?
Set up Python on Windows to not type python in cmd
我希望能够使用一个命令(即filename -p parameter1
)执行Python脚本,而无需键入python filename.py -p parameter1
。我尝试添加Windows shebang系列;但是,当我在命令行中执行。\ filename.py时,它会打开一个新的shell,只要输出在屏幕上闪烁然后窗口就会关闭。有没有办法运行该脚本并输出到当前控制台?
此外,我有什么办法可以摆脱对.py扩展名的需求,并让它可以从任何目录中调用吗?
答案 0 :(得分:2)
设置PATHEXT环境变量以包含.PY扩展名。请参阅http://www.voidspace.org.uk/python/articles/command_line.shtml#pathext。
答案 1 :(得分:0)
shebang系列在Windows中并不受尊重,尽管我仍然把它放在我的代码中,以便参考我在我创建的每个脚本中使用哪个版本的Python。
我建议为您在Windows中制作的每个PY脚本制作一个BAT文件。鉴于可以在同一系统上安装多个版本的Python,这有助于避免版本冲突并且可以执行您想要的操作:
给定“filename.py”,输入“filename.bat”。 假设python27,BAT文件将包含:
@REM Need to unset "PYTHONPATH=C:\Program Files\ArcGIS\bin"
@REM so that "import zlib" can properly work.
@set PYTHONPATH=
@"C:\python27\python.exe" "C:\fullpath\to\my\file\filename.py" %*
如果你想保持简单,你只需要使用最后一行。请注意,@符号使BAT文件不回显该行。 %*告诉BAT文件将所有参数传递给python脚本。只要BAT文件在您的路径中,您就可以从任何地方调用它作为“filename.bat”或“filename”。