我该如何创建一个.bat文件来运行一个包含pygame的Python文件?
简单。
只需要将以下内容作为批处理文件的第一行即可:
python -x %0 %* &goto :eof
批处理文件的其余部分是Python程序。以下是一个完整的示例:
python -x %0 %* &goto :eof
import sys
print "this is a batch file"
sys.exit()
首先,&是一个分隔符,允许第一行包含两个独立的批处理命令。第一个运行Python,第二个命令跳过剩下的批处理文件,这是Python代码,而不是批处理语言。
-x
是Python选项,它跳过文件的第一行,因此这个特殊的行只被处理为批处理文件,而不是由Python解释器处理。%0
和%*
是两个特殊的批处理文件变量,表示批处理文件本身的名称和在调用批处理文件时给出的任何参数。
我已经尝试了这个作为.bat
和.cmd
文件,唯一的注意事项是您需要使用包括扩展名在内的完整名称来调用文件。请参见类似问题:如何在批处理文件中使用Jscript。
@echo off& python -x %0".bat" %* &goto :eof
。 - eat.bat
结尾命名!而且:错误消息中的行号现在偏移了1,对于初学者来说是个很好的惊喜!谢谢。 - eatgoto :eof
可以被替换为 exit /b [可选的错误级别]
。只是为了避免在过去20年中第一次使用 goto
;) - Alex Musayev"%~f0"
而不是%0
,则可以获得脚本的完全限定路径,这可能是必要的,如果您想从当前执行时所在的目录以外的目录运行它。 - dash-tom-bangpython MyGame.py
接下来你只需要创建一个包含完全相同内容的文件。将扩展名更改为.bat
,然后就完成了。
python.exe
所在的目录是否已列入你的path
中?如果没有,你必须将其添加到其中。谢谢。 - eatpython.exe
仍然不在你的 path
中。还有,你尝试过 > MyGame.py
命令在你的系统中是否有效吗?谢谢。 - eat输入命令cd
切换目录,例如cd c:/users/me/Desktop
。
然后在下一行输入mygame.py
。
你的代码应该长成这样:
cd c:/users/me/Desktop
mygame.py
创建一个包含这两行的批处理文件:
"yourfilename".py
pause