首先让我介绍一些导致这个问题的背景信息。
我在win8.1笔记本电脑上安装了python的两个版本。最初Py2.5被设置为默认值。我这样做的方法是将python3.5的python.exe
重命名为python35.exe
和文件
pythonw.exe
作为pythonw35.exe
,它似乎创建了两个与这两个文件同名的.dll
文件(我不记得这两个dll文件在重命名之前是否存在),并成功地将python2.7设置为默认值(即,当我在命令行中键入命令python
时,python2.7运行)。最近我需要将python3.5设置为默认值。然后,我继续以相同的方式重命名Python 2.7
版本的文件名,并将3.5版本的文件名恢复为其原始的正常格式(即python.exe
和pythonw.exe
)。在
在所有这些混乱之后,我在空闲状态下运行print("Hello World")
,它会弹出以下错误:
IDLE internal error in runcode()
Traceback (most recent call last):
File "C:\Python35-32\lib\idlelib\rpc.py", line 339, in putmessage
r, w, x = select.select([], [self.sock], [])
TypeError: argument must be an int, or have a fileno() method.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Python35-32\lib\idlelib\rpc.py", line 240, in asyncqueue
self.putmessage((seq, request))
File "C:\Python35-32\lib\idlelib\rpc.py", line 342, in putmessage
raise OSError("socket no longer exists")
OSError: socket no longer exists
所以我刚刚再次安装了python3.5.1安装程序,一切都已经启动并运行了。在
我也面临同样的问题问题。这个由于将我的文件命名为“集合”而引发错误。这意味着,如果您将文件命名为任何内置函数、关键字、模块等,则会引发此错误。在
解决此错误的方法是,检查是否通过任何内置函数、关键字、模块等创建了任何文件。如果是,则重命名与任何python关键字无关的文件名。它将如预期的那样工作。在
相关问题 更多 >
编程相关推荐