【发布时间】:2015-04-20 23:30:45
【问题描述】:
我遇到了奇怪的问题,虽然是 python 新手。这看起来与几个论坛上已经说明的有点不同。
Directory structure:
Project_Folder
-- Folder A
-- SubFolder A1
-- Subfolder A2
-- Subfolder A3
-- Folder A3-1
-- XYZ.py
-- Subfolder A4 ( this contains utility classes)
-- A4-1.py
-- A4-2.py
注意:所有文件夹都包含__init__.py,PYTHON PATH 也包含 PATH 中所有必需的目录。
Script XYZ.py ... 依赖于以下 2 个实用程序类。 Scipts 首先在 sys.path 上附加子文件夹 A4,因此理想情况下不需要使用 A4.A4-1.py 而是直接使用 A4-1 应该在导入时工作。像下面 from A4-1.py 导入子方法 from A4-2.py 导入子方法
但这是一个问题......如主题中所述。但是,如果我使用 A4.A4-1.py,同样的工作
奇怪的部分,与已经设置项目的服务器上的脚本工作相同。
作为 Python 新手,我需要了解如何从本地计算机执行此脚本。 (在导入时不更改或使用模块名称)
另外,我正在使用 IDE INtelliJ,我已将 A4 作为依赖项添加到我的项目中。并且编译器能够解决它,但执行会引发导入错误...
感谢任何帮助。
【问题讨论】:
-
您可以在
__init__.py周围加上反引号,这样您就不会得到粗体,人们不会怀疑这是错误。 -
你能显示路径和将此目录添加到路径的代码吗?此外,您不需要在导入语句中包含
.py。 -
我没有让你感到抱歉,请注意,init.py 已经存在于文件夹中...我认为编辑器已删除 init.py 中的下划线...可能这让你感到困惑?
-
import sys,os,time,datetime testdir = os.path.dirname(os.path.abspath(file)) sys.path.append(testdir+"\\ ..\\..\\utilities") from xyzUtil import XYZ from abcUtil import ABC
-
@Mark 如果您需要更多信息,请告诉我......谢谢!!
标签: python python-2.7