[英]The following module won't import
我在 Python 中有一個 PyCharm “項目”,也就是說,我有一個文件夾,它是各種實驗性 Z23EEEB4347BDD26BFC6B7EE9A3B755pyterclass 筆記本的集合,以及以下便捷方法/Julyterclass 文件,
實際上,我剛剛寫了一些我引以為豪並希望重復使用的東西。 我發現很難導入。 我已經查看並嘗試實施以下問題的答案,但無濟於事:
項目結構:
learning_project
|
├───.idea
│ ├───dictionaries
│ └───inspectionProfiles
|
├───decision_trees
├───linear_algebra
├───neural_networks
| ├───based_sequential.py <---------------------------- # Module location #
│ ├───cross-entropy-gradient-descent
│ └───learning pytorch
| ├─── class_notebook.ipynb <---------------------- # Want to import for use here #
| └───Cat_Dog_data
|
└───venv
├───Include
├───Lib
│ └───site-packages
└───Scripts
我嘗試了以下方法:
import based_sequential
from based_sequential import ClassName
import based_sequential.ClassName
import neural_networks
from neural_networks import based_sequential
import neural_networks.based_sequential
from neural_networks.based_sequential import ClassName
全部導致錯誤No module named '<pick your poison>'
我還懷疑我需要做一些工作來學習編寫比 one.py 文件更大的代碼的管理方面。
我希望您在嘗試導入的函數/模塊中返回一些值。 如果沒有,請檢查。
否則,只需使用sys
模塊中的sys.path
並將其指向要導入的文件。
>>> import sys
>>> sys.path
['',
'C:\\Python33\\Lib\\idlelib',
'C:\\Windows\\system32\\python33.zip',
'C:\\Python33\\DLLs',
'C:\\Python33\\lib',
'C:\\Python33',
'C:\\Python33\\lib\\site-packages']
我建議你檢查相對進口。 https://realpython.com/absolute-vs-relative-python-imports/解決這個問題的方法如下所示:
我將使用的文件結構:
└── project
├── package1
│ ├── module1.py
│ └── module2.py
└── package2
├── __init__.py
├── module3.py
├── module4.py
└── subpackage1
└── module5.py
要在模塊 1 中從模塊 2 導入,請使用:
from .module2 import function1
在從 module2 導入 module3 的情況下,使用:
from ..package2 import module3
在您自己的情況下,它應該是:
from ..based_sequential import whatever
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.