Python跨目錄導包踩坑記錄


Outline

寫了個Flask+celery+Redis的項目,目錄結構如下:

muji-data-job-pyexecutor
    │  .gitignore
    │  app.py  # Flask app,如果想項目后續擴展變大,可用藍圖管理
    │  README.md
    │  requirements.txt
    │
    ├─config
    │      config.yaml
    │
    ├─my_celery  # Celery 任務 
    │  │  main.py
    │  │  settings.py
    │  │
    │  ├─clean
    │  │      tasks.py
    │  │
    │  ├─exchange_spider
    │  │      tasks.py
    │  │
    │  └─fix
    │         tasks.py
    │
    ├─testcase
    │      compare_df.py
    │
    └─util
          spiderUtils.py
          utils.py

准備從 clean/tasks.py 導入 util/utils.py 來使用:

from util.utils import CallBack

在pycharm下是OK的(pycharm會動態解決跨目錄導包)

但在terminal下運行,就報錯說找不到 util 

就選擇用 sys.path.append() 把所需要導入的包加入 sys環境;

但加了之后依然報錯,下面是我加的方式:

sys.path.append(‘D:\git_project\muji-data-job-pyexecutor\util’)
加了之后依然提示找不到 util

解決

 

 明明已經把util加到sys環境里了,有圖有真相~~

但是還是提示沒這個包,頭都大了!

后來想了下,上面已經把util加到sys下了,我去找util的確找不到,如果我在muji-data-job-pyexecutor 下導入按理說是可以找到 util的;

因此直接加到muji-data-job-pyexecutor,然后導包~ 可以了~~
(下班了下班了~)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM