【问题标题】:Import errors between some python moduls/functions/variables一些python模块/函数/变量之间的导入错误
【发布时间】:2018-02-27 14:07:48
【问题描述】:

此代码在周五运行没有问题,并且仍在同事的笔记本电脑上运行,但我无法再运行它。 正如您在屏幕截图中看到的那样,我的编辑器不再找到一些模块,并且出现 pylint 错误“E0401:无法导入”。 丢失的文件存在于文件夹设置中,您可以在左侧的资源管理器中看到。

今天我停用/激活了 pylint,重新安装了 vs code 和 python,将 init.py 添加到 Settings 文件夹,在 eclipse 中尝试了相同的代码,修改了 Path 环境变量并创建了 PYTHONPATH 环境变量.这一切都没有成功:/

我很感激每一个提示,它们让我能够解决这个问题。

错误输出为文本:

    Windows PowerShell
Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

PS C:\Users\Evgenij\Desktop\Desktop\Eth_Test_Dev> & C:/Python27/python.exe c:\Users\Evgenij\Desktop\Desktop\Eth_Test_Dev\Code\__TC__Template.py
Traceback (most recent call last):
  File "c:\Users\Evgenij\Desktop\Desktop\Eth_Test_Dev\Code\__TC__Template.py", line 36, in <module>
    from Lib.IHR_EthApi import EthApi as ETH
  File "c:\Users\Evgenij\Desktop\Desktop\Eth_Test_Dev\Code\Lib\IHR_EthApi.py", line 6, in <module>
    from IHR_GeneralApi import GeneralApi as SYS
  File "c:\Users\Evgenij\Desktop\Desktop\Eth_Test_Dev\Code\Lib\IHR_GeneralApi.py", line 4, in <module>
    import IHR_TestSuiteConfig.py
ImportError: No module named IHR_TestSuiteConfig.py
PS C:\Users\Evgenij\Desktop\Desktop\Eth_Test_Dev>

【问题讨论】:

  • 请使用文本作为您的问题和错误输出,而不是屏幕截图。图片不可搜索,因此不太可能对任何未来的参考有用
  • 感谢提示。我添加了更多信息和错误输出。当您需要更多详细信息时告诉我。

标签: python visual-studio-code importerror pylint


【解决方案1】:

在您的代码中,您有以下行:

import IHR_TestSuiteConfig.py

这是行不通的,因为您没有指定要按文件名而是按模块名称导入的模块,例如:

import IHR_TestSuiteConfig

但是查看您的屏幕截图,您会遇到更大的问题,即代码保存在 Settings 目录中,与包含您要导入的代码的 Lib 目录处于同一级别。

您需要将所有代码锚定到一个级别,以便您可以这样做:

from ..Settings import IHR_TestSuiteConfig

或者您需要操作 PYTHONPATH 环境变量以将 Settings 直接放在 sys.path 上(在 VS Code 中,您可以创建一个 .env 文件来执行此操作,但它不会影响运行 Python从终端,仅当 VS Code 运行时,例如 Pylint)。

【讨论】:

  • 谢谢你的回答!确实有一个更大的问题,但我认为它已解决,因为我将 Settings 文件夹添加到 Path 和 PYTHONPATH,如您所说。现在我正在研究下一个问题,但这将是另一个话题。
猜你喜欢
  • 2020-08-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-14
  • 2023-03-03
  • 1970-01-01
相关资源
最近更新 更多