我有一个像这样组织的PyDev项目(我省略了.git
目录)。目的是构建一个名为stattests
的包。
| .gitignore
| .project
| .pydevproject
|
+---.git
+---stattests
| | setup.py
| |
| +---tests
| | | tests.py
| | | __init__.py
|
\---unittests
tests1.py
顶级目录stattests
包含setup.py
文件和子文件夹tests
,这是一个包含__init__.py
的模块,可从{{{{}}导入所有函数1}}在同一模块文件夹中。请注意,这里的测试不是单元测试,而是统计测试。
单元测试包含在tests.py
文件夹中,如下所示:
unittests
当我执行此测试脚本时,它不会刷新# unittests/tests1.py
from stattests.tests import tests
series1 = pd.Series(np.random.randn(10))
tests.test1(series1)
函数的定义,而是使用旧的定义。
我还手动将项目的所有文件夹和子文件夹添加到项目stattests.tests.test1
属性中。
帮助表示赞赏。
答案 0 :(得分:1)
您是否拥有:'用户模块删除器(UMD)'(首选项> pydev>交互式控制台>用户模块删除器)>启用UMD激活?
即:如果你只是将它发送到控制台模块缓存在sys.module中,那么,导入的模块通常不会被重新评估...现在,UMD,如果启用,会尝试强制重新加载使用'runfile'而不是'execfile) - 虽然这有时会很棘手,所以它也可能会失败 - 所以,如果你想做一个简单的运行,推荐的方法就是运行F9(运行当前模块),如果要在shell中以交互方式使用之后定义的符号,建议使用Ctrl + Alt + Enter。答案 1 :(得分:0)
如果没有更新,则可以清除缓存并确保编辑并保存了正确的文件。在项目结构中应该有一个名为 pycache 的文件夹,只需将其删除即可。在eclipse中刷新的另一种方法是右键单击>在PyDevPackage Explorer中刷新项目或按F5。