在PyCharme中工作时,为什么我的import语句在VS代码中给出错误?

时间:2019-07-12 19:11:11

标签: python-3.x visual-studio-code

我正在用Python编写汇编程序,并且由于我非常喜欢它的简单性,因此我尝试切换到VS代码进行开发任务。在花了一个下午试图弄清楚导入语句为什么会出错的原因之后,我尝试在PyCharm中打开相同的项目,然后一切顺利。 我的项目结构:

/assembler
  /src
   __init__.py
   code.py
   main.py
   parser.py
   symbol_table.py

因此,我最终在Python 3.6文档上浪费了很多时间来弄清楚我在做什么错,然后在发现代码正常之后,我什么都找不到,无法确定配置中的什么导致了问题,甚至在VSCode上也不存在问题。 这是我简单的main()函数,应将同一类的其他模块中的类导入。

from src.parser import Parser
from src.code import Code
from src.symbol_table import SymbolTable


def main():
    parser = Parser()
    code = Code()
    symbol_table = SymbolTable()

    parser.has_more_commands()


main()

它应该只在屏幕上打印一些内容以确认导入正常,相反,我收到此错误:

回溯(最近通话最近):   文件“ c:/Users/miche/Desktop/NAND2TETRIS/projects/06/assembler/src/main.py”,第1行,在     从src.parser导入解析器 ModuleNotFoundError:没有名为“ src”的模块

有人对我的VSCode有同样的问题,可以告诉我我的配置或语句出了什么问题吗?

1 个答案:

答案 0 :(得分:0)

我不完全知道Windows VS Code中的问题,但相对路径可能错误。我在macOS上也遇到了类似的问题。

在/assembler/src/__init__.py中尝试:

from .parser import Parser
from .code import Code
from .symbol_table import SymbolTable

,然后在您的main.py中尝试:

from .src import Parser, Code, SymbolTable