我已经从头到尾搜索了这个站点,但还没有找到一种方法可以在 Python3x 中真正完成我想要的。这是一个简单的玩具应用程序,所以我想我可以在断言中编写一些简单的测试用例,然后收工。它确实会生成报告等,所以我想确保我的代码在更改时不会做任何奇怪的事情。
我当前的目录结构是:(仅包括相关部分)
project
-model
__init__.py
my_file.py
-test
my_file_test.py
我很高兴让 my_file_test.py 导入 my_file.py。
就像我说的那样。我从上到下搜索了这个网站,但没有任何解决方案有效。我的 Python 版本是 3.2.3,在 Fedora 17 上运行。
以前尝试过的尝试: https : //stackoverflow.com/questions/5078590/dynamic-imports-relative-imports-in-python-3 从父文件夹导入模块 谁能解释python的相对导入? 如何在python中完成相对导入
几乎在每次尝试中,我都会遇到以下错误:
ImportError: No module named * OR ValueError: Attempted relative import in non-package
这里发生了什么。我已经尝试了关于 SO 以及整个互联网的所有公认答案。在这里没有做任何花哨的事情,但作为 .NET/Java/Ruby 程序员,这被证明是直观性的绝对定义。
编辑:如果重要的话,我尝试加载我试图在 REPL 中导入的类,我得到以下信息:
>>> import datafileclass
>>> datafileclass.methods
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
>>> x = datafileclass('sample_data/sample_input.csv')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'module' object is not callable
如果这很重要...我知道课程中的功能有效,但我无法导入它,这导致无法进行测试。将来肯定会引起集成问题。(更改名称以保护无辜者)在几周内获得此库迭代所需的功能......任何帮助都可能有用。本来可以在 Ruby 中完成,但客户希望 Python 作为一种学习体验,