我最近发现了 Python getpass not working on Windows 的修复:Python not working in the command line of git bash
或者至少这是我记得的关于更改我的 python 配置的最后一件事。(这适用于 Windows 10 上的 Python 3.6.1)
现在,我还将 Python 用于其他任务,这些任务只需调用子进程即可在终端上键入多个命令:
go build ./folder/
mv ./src/ ./bin/
我得到错误:go: GOPATH entry is relative; must be absolute: "/c/Users/OP/work"
。但是,如果我自己打字,我就不会明白go build ./src/folder
。我C:\work
在环境变量中设置了 GOPATH。我试过用;
.
有没有办法每次都反转别名 python?或者将python的别名设置为winpty时到底发生了什么?
我在想,当我直接调用 go build 时,它是由我的用户配置文件或系统调用的。而当python的子进程调用它时,它调用的是相反的。因此,即使我在环境变量中只设置了 1 个,我也有两个 GOPATH 变量。
旁注:最近对 GOPATH 的另一个更改是更改它,C:/go
因为它不能与 GOROOT 相同。由于某种原因,该错误随机弹出。它在该设置下工作了一段时间,除了在已经使用的许多其他导入包之上添加另一个导入包之外,我不记得之前进行了任何更改。
更新:type python
我得到了结果:python is aliased to 'winpty python.exe'
。因此,我尝试使用unalias python
. 我得到的新结果是:python is hashed (/c/Users/OP/AppData/Local/Programs/Python/Python36/python)
.
这修复了go build
Python 子进程中的命令。但是,该别名是对使用 getpass 包的另一个 Python 问题的修复。