经过仔细分析,发现这么个情况:
1、xxx.py的同级目录下有个code.py和code.pyc文件(注:code.py是我自己瞎写的一个文件,但是code.pyc不知道何时生成的)。
2、xxx.py的同级目录下所有.py文件IDLE都不能正常运行。
3、如果将xxx.py复制到另一个目录下,xxx.py用IDLE可以正常运行!
综上,问题就在于这个code.py和code.pyc上。
我到Python裤中一查,果然code.py这个文件名竟然是系统文件名!
然后调查了一下D:\Python27\Lib\code.py文件的功能,发现是这样的:
在python的help文档中这样写道:Utilities needed to emulate Python's interactive interpreter.
也就是说这个code.py功能是模拟Python交互式解释器。
并且,如果IDLE打开xxx.py,如果同等目录下还有一个”code.py"文件名的话(它检查code.py内容是什么),会先编译(解释)code.py生成code.pyc,然后再执行解释xxx.py.
其结果就相当于打开多个终端,而且一个终端的打开代码还是错误的(此处纯属YY,如有不妥之处请联系我)。
于是就出现了什么子进程无法连接错误之类的Error。
------------------------------------------------------------------------------------------------------
解决方案:
不要自己给文件名起"code.py"这个名字!或者是检查要运行的源文件目录下有没有code.py、code.pyc这两个文件中的一个,删除即可。