模块导入在PyCharm中工作,不适用于Python IDLE

时间:2016-04-14 09:20:20

标签: python

这是我项目的文件结构:

data
front_end_ui
- __init__.py
- ui.py

quizlib
- __init__.py
- classes.py
- data_structure.py
- quiz.py
- student.py

好吧,除了这是否是好的编程(可能是飞行的意大利面怪物)程序从ui.py运行,而在PyCharm中,从quizlib导入的工作:

All fine in PyCharm

然而在IDLE:

Import failed.

从ui.py的代码中可以看到的第一件事就是从quizlib的__init__.py导入的东西(只是在整个程序运行之前计算出来的几个绝对目录名,因为对于我的生活我无法获得相对改变目录的工作)。

除了在IDLE中没有。我能够让它工作的唯一方法是将整个quizlib复制到front_end_ui中。 (考虑到我是如何对它进行编码的,我不太清楚为什么它在我这样做时有效)如果我不能解决为什么这将是一个可接受的解决方案,但是随着这个项目提供的解释最好保留quizlib它在哪里。

有人可以解释一下这种行为吗?作为参考,我使用的是Python 3.4.3,如果需要,我会提供任何进一步的细节。提前谢谢。

1 个答案:

答案 0 :(得分:0)

这种问题总是由于PyCharm将项目路径添加到PYTHONPATH。

enter image description here

取消选中这些选项并再次运行。结果将是相同的。