PyCharm 模块名称冲突

4 投票
1 回答
1702 浏览
提问于 2025-04-16 13:51

我有一个模块叫做 'io',它在我的包里:mypackage.io。这就跟Python自带的io包发生了冲突。因此,每当我在PyCharm中调试我的代码时,由于pydev助手使用了gzip(而gzip又使用了io),我就会遇到一个模块导入错误。这个问题部分是因为PyCharm会自动把我的包路径添加到解释器的路径中。所以我现在有两个选择:

我是不是漏掉了更好的解决办法?

1 个回答

3

你基本上有两个选择:

  1. 给你的自定义包换个名字
  2. 明确使用 mypackage.io.foo,而不是 io.foo

一般来说,把自定义包放在一个内置包的上面是不太好的做法,除非你是故意要改变那个内置包的行为。这样做可能短期内看起来有好处,但长期会带来很多麻烦。

撰写回答