从VScode中的当前项目目录导入包

时间:2016-08-31 11:11:47

标签: python visual-studio-code

当我在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

1 个答案:

答案 0 :(得分:0)

关于heap文件,请确保您在项目根文件夹上运行。

如果这些test.py文件在同一文件夹上运行,请尝试在此文件夹中添加__init__.py空文件。

  

需要__init__.py个文件才能使Python将目录视为包含包;这样做是为了防止具有通用名称的目录(例如字符串)无意中隐藏在模块搜索路径上稍后(更深)发生的有效模块。在最简单的情况下,__init__.py可以只是一个空文件,但它也可以执行包的初始化代码或设置__all__变量,稍后将对此进行描述。