无法将设置导入程序包子文件夹中的文件

2024-05-18 10:09:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个目录树,如下所示:

lib -
    |
 __init__.py
    |
 settings.py
    |
  helpers-
         |
      space_help.py
         |
      __init__.py

我需要将某些内容从settings.py导入space_help.py,但是,当我尝试导入并运行它(使用python 2.7)时,我遇到以下错误:

Traceback (most recent call last):
  File "dre234.py", line 10, in <module>
    from lib.settings import CLONE
  File "C:\Users\me\Documents\bin\python\dre234\lib\settings.py", line 9, in <module>
    from lib.algorithms.step_up import *
  File "C:\Users\me\Documents\bin\python\dre234\lib\algorithms\space_help.py", line 9, in <module>
    from lib.settings import random_salt_generator
ImportError: No module named settings

为什么我无法将其导入文件


Tags: infrompyimportsettingsinitlibline
1条回答
网友
1楼 · 发布于 2024-05-18 10:09:06

当您尝试使用python导入某些内容时,它首先检查当前模块的目录,然后检查系统路径。如果要从当前目录上方的文件夹导入内容,则需要将其添加到系统路径。像这样:

import os
import sys

file_path = os.path.join(os.path.dirname(__file__), '..')
sys.path.append(file_path)

from settings import CLONE, random_salt_generator
from algorithms.step_up import *

相关问题 更多 >