看起来名为io.py的模块(在我的一些软件包中)无法在PyCharm(2017.3.1社区)中调试 - 断点从未命中。 重命名此模块可以解决问题。
问题是:在python中不建议命名模块io.py
?
由于
答案 0 :(得分:2)
这是 Pycharm 的一个错误——人们可以随意命名他们的模块,包括 io.py。
要修复较新版本的 Pycharm,请找到文件 pydevd_dont_trace_files.py。就我而言,Pycharm 安装在 /opt/pycharm-2020.3,因此该文件位于:
/opt/pycharm-2020.3/plugins/python/helpers/pydev/_pydevd_bundle/pydevd_dont_trace_files.py
找到类似于以下内容的行:
if IS_PY3K:
# if we try to trace io.py it seems it can get halted (see http://bugs.python.org/issue4716)
DONT_TRACE['io.py'] = LIB_FILE
并注释掉这行 DONT_TRACE 并重新启动 Pycharm。
当然,这行必须是出于正当理由而放入的,所以我通常在调试完成后取消注释。
答案 1 :(得分:0)
您可以在python文档中找到io
https://docs.python.org/2/library/io.html
io
是一个内置模块:
io模块为流处理提供了Python接口。在Python 2.x中,这被建议作为内置文件对象的替代,但在Python 3.x中,它是访问文件和流的默认接口。
您无法创建名为内置模块的.py
文件,它们会重复出现。