我在Windows 10上的python 3.5上运行
我有一个目录,里面有一些python脚本
例如
一个叫做pfm.py
,另一个叫做data.py
我想将pfm导入数据
在data.py
内,我写了import pfm
并且收到此错误
import pfm
ImportError: No module named 'pfm'
文件夹路径列表为
C:.
├───data
│ ├───lib
│ │ └───__pycache__
│ └───__pycache__
data.py
和pfm.py
在数据文件夹中
而我正在运行的main.py
在主目录之外
答案 0 :(得分:1)
由于您是从文件夹外部运行主脚本,因此必须指定代码所在的软件包。如果data
位于python路径中,则可以使用import data.pfm
。 / p>
我怀疑它不在您的python路径中,因此您需要指定,您要导入相对于当前软件包的某些内容。因此,使用
import .pfm
它将使用当前程序包(data
)。
请注意,执行此操作不能单独调用data.py
,因为这不会提供必要的本地包装信息。
答案 1 :(得分:1)
解决方案是写:
from . import pfm
答案 2 :(得分:0)
在 data.py 脚本中导入pfm 之前,您可以定义项目的基本位置,之后所有
import sys
sys.path.append("your project base location where pfm script is written")
import pfm