【问题标题】:sys.path.append which main.py will be importedsys.path.append 将导入哪个 main.py
【发布时间】:2023-01-06 23:24:35
【问题描述】:

如果我有一个包含两个文件main.pymain2.py 的项目。在main2.py我做import sys; sys.path.append(path),我做import main,哪个main.py会被导入?我的项目中的那个还是path 中的那个(问题只有在显然有两个main.py 时才会出现)?

我可以强制 Python 导入特定的吗?

【问题讨论】:

  • 你试过了吗?
  • 试试sys.path.insert(0,path) 所以path 先来

标签: python sys


【解决方案1】:

根据this,导入顺序是:

  1. 内置 python 模块。可以在变量sys.modules中看到列表
  2. sys.path条目
  3. 安装相关的默认位置

    您的目录位于 sys.path 中,因此它取决于 sys.path 中条目的顺序。

    您可以通过运行以下代码来测试导入顺序:

    import sys
    print(sys.path)
    

    正如您将观察到的,sys.path 的第一个条目是您的 main.py 目录

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-05-10
    • 2021-09-03
    • 1970-01-01
    • 1970-01-01
    • 2020-02-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多