无法在gitterminal中运行python?

我在我的Win7系统上安装了python 3.6,并试图让它在git bash(MINGW64)中工作,到目前为止无济于事。

我已经将安装目录(当然不是.exe)添加到PATH,没有结果。

即使我直接cd到安装目录,它不会看到它。

 $ python bash: python: command not found $ echo $PATH /c/Users/Aerovistae/bin:/mingw64/bin:/usr/local/bin:/usr/bin:/bin:/mingw64/bin:/usr/bin:/c/Users/Aerovistae/bin:/c/Windows/system32:/c/Windows:/c/Windows/System32/Wbem:/c/Windows/System32/WindowsPowerShell/v1.0:/c/Program Files/Intel/WiFi/bin:/c/Program Files/Common Files/Intel/WirelessCommon:/cmd:/c/Program Files (x86)/Skype/Phone:/c/Program Files/Intel/WiFi/bin:/c/Program Files/Common Files/Intel/WirelessCommon: C:/Users/Aerovistae/AppData/Local/Programs/Python/Python36-32:/usr/bin/vendor_perl:/usr/bin/core_perl $ cd C:/Users/Aerovistae/AppData/Local/Programs/Python/Python36-32 $ python bash: python: command not found $ python.exe bash: python.exe: command not found 

如果我从该目录中尝试./python ,那么当我按下Enter键时,它会进入下一行,并允许我继续input,因为出于某种原因,对命令的期望更多。 ./python不被认为是一个完整的命令,它正在等待closures,就好像我有一个开引号但没有closures引号。 无法弄清楚为什么。

我在这里错过了什么? 为什么不能运行.exe,即使我在目录中?

旁注,为什么它显示PATH作为冒号分隔符而不是分号分隔符?

为什么它显示PATH为冒号分隔符而不是分号分隔符?

因为bash使用:作为路径分隔符。 这意味着PATH环境变量中的C:/yadda/yadda被解析为两个目录: C/yadda/yadda 。 如果仔细观察echo $PATH输出,您会看到许多以/c/开头的条目。 你的python安装条目是唯一使用C:/ 。 在.bashrc或.profile中设置PATH时,应该使用/c/ notation。

还要注意前后路径名称和空格之间的空格: 。 前者肯定是有问题的。 我不确定后者,因为在设置PATH时我从不在这个位置添加空格。

如果我从该目录中尝试./python,那么当我按下Enter键时,它会进入下一行,并允许我继续输入,因为出于某种原因,对命令的期望更多。

根据@eryksun的评论:

您需要在正常的Windows控制台中运行bash.exe,或者,如果使用mintty终端,请强制Python通过python -i使用交互模式。 mintty隐藏真正的控制台并将StandardInput设置为名为\\.\pipe\msys-[UNIQUE_ID]-pty0-from-masterStandardOutput的管道,名称为\\.\pipe\msys-[UNIQUE_ID]-pty0-to-master 。 管道不是Windows中的字符设备,所以isatty返回false,所以Python以非交互模式启动,除非通过-i选项强制。