以下模块不会导入

roc*_*ves 5 python import pycharm

我有一个 Python 中的 PyCharm“项目”,也就是说我有一个文件夹,它是各种实验性 Python 文件、便利方法/类和 Jupyter 笔记本的集合,这些文件来自跟随在线课程。

我实际上只是写了一些我引以为豪的东西,并想重新使用。我发现很难导入。我已经查看并尝试实施以下问题的答案但无济于事:

  1. 无法在 Python 中导入我自己的模块
  2. 如何在python 3.6中导入我自己的模块?
  3. 如何以优雅的方式导入我自己的模块?

项目结构:

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
Run Code Online (Sandbox Code Playgroud)

我尝试了以下方法:

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
Run Code Online (Sandbox Code Playgroud)

都导致错误 No module named '<pick your poison>'

  • 问题 1:显然,我错过了什么?
  • 问题 2:我所在的组织是问题的一部分吗?我开始怀疑它是。

我还怀疑我需要做一些工作来学习编写比一个 .py 文件还大的代码的管理方面。

小智 1

我希望您在尝试导入的函数/模块中返回一些值。如果没有,请检查一下。

否则,只需使用sys.pathfrom sysmodule 并将其定向到您要导入的文件。

>>> 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']
Run Code Online (Sandbox Code Playgroud)