当我在Python项目中构建或调试特定文件(导入用户定义的包)时,我收到导入错误。我该如何解决这个问题?
test.py
for key in sorted(d.iterkeys()):
print("%s: %s" % (key, d[key]))
test2.py
def sum(a,b):
return a+b
上述代码会导致导入错误from test import sum
sum(3,4)
。
目录树
cannot import test
尝试导入图表;
├── graphs
│ ├── Dijkstra's\ Algorithm.py
│ ├── Floyd\ Warshall\ DP.py
│ ├── Kruskal's\ algorithm.py
│ ├── Prim's\ Algoritm.py
│ ├── __init__.py
│ └── graph.py
├── heap
│ ├── __init__.py
│ ├── heap.py
│ └── priority_queue.py
答案 0 :(得分:0)
关于heap
文件,请确保您在项目根文件夹上运行。
如果这些test.py
文件在同一文件夹上运行,请尝试在此文件夹中添加__init__.py
空文件。
需要
__init__.py
个文件才能使Python将目录视为包含包;这样做是为了防止具有通用名称的目录(例如字符串)无意中隐藏在模块搜索路径上稍后(更深)发生的有效模块。在最简单的情况下,__init__.py
可以只是一个空文件,但它也可以执行包的初始化代码或设置__all__
变量,稍后将对此进行描述。