Python将无法在git bash (Windows)中运行。当我在命令行中输入python时,它会把我带到一个空行,而不会像在Powershell中那样说它已经输入了python 2.7.10。它没有给我一个错误消息,但python就是不运行。

我已经确保PATH中的环境变量包括c:\python27。我还能检查什么?


发生此问题的会话如下所示:

user@hostname MINGW64 ~
$ type python
python is /c/Python27/python

user@hostname MINGW64 ~
$ python

...坐在那里,不回到提示。


当前回答

python.exe -i工作,但通过发送“^Z”(CTRL+Z)退出交互模式时出现问题。因此,在Git Bash for Windows中使用winpty python.exe似乎更好。 使用~/bin目录创建一个包装/引用文件(如~/bin/python),该文件可以在任何地方访问(您可以使用不同版本的引用,如~/bin/python37)。 文件内的代码:

#!/usr/bin/env bash
# maybe declare env vars here like
# export PYTHONHOME=/c/Users/%USERNAME%/.python/Python36
# export PATH="${PATH}:/c/Users/%USERNAME%/.python/Python36"

# replace %USERNAME%,
# or use "~" instead of "/c/Users/%USERNAME%" if it works
winpty /c/Users/%USERNAME%/.python/Python36/python.exe ${@}

我只是不喜欢这些“神奇”的别名,你总是忘记它是从哪里来的,有时在某些情况下会导致问题。

使用~/bin/python文件和-i参数:

#!/usr/bin/env bash
if [ -z "${@}" ]; then
    # empty args, use interactive mode
    /c/Users/%USERNAME%/.python/Python36/python.exe -i
else
    /c/Users/%USERNAME%/.python/Python36/python.exe ${@}
fi

其他回答

您可以更改目标为Git Bash快捷方式从:

"C:\Program Files\Git\git-bash.exe" --cd-to-home 

to

"C:\Program Files\Git\git-cmd.exe" --no-cd --command=usr/bin/bash.exe -l -i

这是ConEmu用来启动git bash的方式(版本16)。最近的版本正常启动,这就是我如何到达那里…

除了@Vitaliy Terziev的回答

尝试触摸.bash_profile,然后在文件中添加别名。

我是windows 10用户,我已经在我的系统中安装了GIT,只是接受默认设置。

在阅读了上面的答案后,我得到了我自己的2个解决方案,这2个解决方案在GIT bash上完美地工作,并方便我在GIT bash上执行Python语句。

我附加了我的GIT bash终端的3个图像。第一个是问题,后两个是解决方案。

问题-光标只是等待击中python命令

解决方案1

在GIT bash终端执行winpty <path-to-python-installation-dir>/python.exe。

注意:不要在GIT bash中使用C:\Users\Admin这样的路径样式,而是使用/C/Users/Admin。

在我的例子中,我在GIT bash上执行了winpty /C/Users/SJV/Anaconda2/python.exe命令

或者如果你不知道你的用户名,那么执行winpty /C/Users/$ username /Anaconda2/python.exe

解决方案2

只要输入python -i就行了。

谢谢。

我在答案列表中看不到下一个选项,但我可以使用“-i”键获得交互式提示:

$ python -i
Python 3.5.2 (v3.5.2:4def2a2901a5, Jun 25 2016, 22:18:55)
Type "help", "copyright", "credits" or "license" for more information.
>>> 

我知道这是一个老帖子,但我刚刚在运行Python 3.8.5和Git 2.28.0.windows.1的Windows 10上遇到了这个问题

不知何故,我还安装了几个不同的2.7x版本的Python。我删除了Python的所有版本(3x和2x),在这里下载了官方安装程序,安装了3.8.5 fresh(只是使用默认值),在这个位置安装了Python 3.8.5:

C:\Users\(用户名)\ AppData \本地Python \程序\ \ Python38

然后,为了让python命令在我的git bash shell中工作,我必须按照这里列出的说明手动将Python38的路径添加到我的路径变量中。注意这一点很重要,因为在出现的第一个模式底部的python安装程序中,它会询问您是否想将python路径添加到path环境变量中。我单击了旁边的复选框,但它实际上并没有添加路径,因此需要手动将路径添加到path环境变量中。

现在使用我的gitbash shell,我可以浏览到一个目录,其中有一个python脚本,只需键入python scriptname .py,它运行没有问题。

我想发布这个,因为这是我所要做的,让我的git shell允许我运行python脚本。我想可能有一些更新,所以我不需要做这里列出的任何其他解决方案。无论如何,如果在Windows 10机器上运行gitbash shell中的python脚本遇到问题,这是另一件可以尝试的事情。

享受。