python 找不到自定义包

内容纲要

诡异的 ModuleNotFoundError

我的 python 工程目录结构如下

tree /data/python/
/data/python/
└── px500
    ├── config
    │   ├── __init__.py
    │   └── config.py
    ├── jd
    │   ├── __init__.py
    │   └── jd_api.py
    ├── lib
    │   ├── __init__.py
    │   └── log.py
    └── webapp.py

有 3 个自定义包分别是 configjdlib,在 lib 包里的 py 文件可以 import config 包里的模块,但是在 jd 包里的 py 文件却不能 import lib 包里的模块

错误提示如下

python3 /data/python/px500/jd/jd_api.py
Traceback (most recent call last):
  File "/data/python/px500/jd/jd_api.py", line 8, in <module>
    from lib.log import root_log
ModuleNotFoundError: No module named 'lib'

解决办法

将工程目录添加到系统路径里,这样 python 就能找到包了

注意:需要在 jd_api.pyfrom lib.log import root_log 代码前执行

# -*- coding: utf-8 -*-

import sys
sys.path.append('/data/python/px500')

from lib.log import root_log
import time

......

搞定,收工

python 找不到自定义包

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

Scroll to top
粤ICP备2020114259号 粤公网安备44030402004258