有一天在 PyCharm 中搞弄 Python 的时候,遇到了一个很傻的问题。也就是说,当我尝试在名为 的文件中运行一个简单的脚本时abc.py,我收到一个错误。我尝试直接从终端运行相同的文件,看起来不错。
abc.py
print("Hello world")
Run Code Online (Sandbox Code Playgroud)
输出:
/Users/.../venv/bin/python /Users/.../abc.py
Fatal Python error: init_sys_streams: can't initialize sys standard streams
Traceback (most recent call last):
File "/usr/local/Cellar/python/3.7.7/Frameworks/Python.framework/Versions/3.7/lib/python3.7/io.py", line 52, in <module>
File "/Users/.../abc.py", line 1, in <module>
RuntimeError: lost sys.stdout
Process finished with exit code 134 (interrupted by signal 6: SIGABRT)
Run Code Online (Sandbox Code Playgroud)
只是出于好奇,这里有什么问题?
编辑:为什么它只在从 PyCharm 运行时发生,而不是从终端运行时发生?
abc是python的标准模块。这里=> https://docs.python.org/3/library/abc.html
如果您将自己的模块 abc.py 重命名为 abcd.py 等其他名称,它应该可以工作