也路撒冷 2024-04-11 12:40 采纳率: 50%
浏览 7

Python中导入包路径在不同运行方式下不同

直接使用run调试可以运行,使用pycharm中的terminal运行报错,,在windows的CMD命令窗口,用python执行也提示找不到包的错误这是什么原因啊

img

这个util.py文件是我项目里自己创建的,和测试文件的关系如下

project
  -testcases
    -test_pytest
      -test_admin_login.py
  -util
    -util.py

尝试了

  • 用 from ..util import util / from .util import util 有语法错误
  • 使用绝对路径导入也不行

补充Terminal的设置

img

  • 写回答

6条回答 默认 最新

  • 阿里嘎多学长 2024-04-11 12:40
    关注

    以下内容由CHATGPT及阿里嘎多学长共同生成、有用望采纳:


    图片似乎没有提供,但从你的描述来看,你遇到的问题可能是由于以下几个原因:

    1. 路径问题

      • Python解释器路径不同:当你直接运行时,可能使用的是系统的全局Python解释器,而PyCharm中可能设置了不同的项目或虚拟环境。确保在PyCharm中使用的Python解释器与你直接运行时使用的是一致的。如果它们指向不同的Python安装,可能会导致找不到util模块。
    2. 模块加载顺序

      • PyCharm的Terminal可能是在一个不同的工作目录下运行的,或者它可能没有包含util所在的上级目录。请确认在PyCharm中是否正确设置了项目的文件结构和Python路径(包括PYTHONPATH)。
    3. 相对导入

      • 你在尝试从..util导入util,这通常用于相对导入,但如果你在PyCharm Terminal中运行,它可能无法理解这种相对路径。确保在util模块所在的位置上使用绝对导入(from util import util),或者如果util在项目中是跨层级的,那么在导入时提供完整的路径,例如from .util import util
    4. 环境变量问题

      • 确保在PyCharm中,特别是如果你使用了虚拟环境,已经激活了正确的环境,并且该环境包含了util所需的依赖。
    5. 错误配置

      • 检查PyCharm的运行配置(Run/Debug Configurations),可能在设置中没有正确地设置了执行脚本时的工作目录,这可能导致找不到util模块。

    为了进一步解决问题,你可以尝试以下步骤:

    • 在PyCharm中检查当前运行配置的Python路径(Interpreter Path)是否正确。
    • 确保util模块所在的文件夹在运行配置的搜索路径(Search Path)中。
    • 如果是虚拟环境,请确保已激活该环境。
    • 试着在PyCharm的Terminal中手动输入python -m path.to.your.project run_script.py,观察是否能成功运行。
    • 在PyCharm的终端输出中查找错误提示,它可能提供了有关找不到模块的详细信息。

    如果问题依然存在,提供具体的代码片段和更详细的错误信息会更有帮助。

    评论 编辑记录

报告相同问题?

问题事件

  • 修改了问题 4月11日
  • 修改了问题 4月11日
  • 创建了问题 4月11日