ImportError: cannot import name 'app' from 'app' (app.ipynb) in jupyter notebook

ImportError: cannot import name 'app' from 'app' (app.ipynb) in jupyter notebook

这是目录结构

▾ 1projet/
  ▾ apps/
      __init__.ipynb
      Statistics.ipynb
      SWEDEN.ipynb
      UAE.ipynb
app.ipynb
index.ipynb

我在index.ipynb写的代码是

import import_ipynb
from app import app
from app import server
from apps import UAE,SWEDEN,Statistics

这给了我这个错误

ImportError: cannot import name 'app' from 'app' (app.ipynb)

我在app.ipynb中写的代码是:

import dash

app= dash.Dash(__name__, suppress_callback_exceptions=True,
                meta_tags=[{'name': 'viewport',
                            'content': 'width=device-width, initial-scale=1.0'}]
                )
server = app.server

并且文件 __init__.ipynb 是空的。

您正在尝试从 .ipynb 文件导入其他 .ipynb 文件。 请注意,这与导入 python 模块 (.py) 不同。 Here 已经有一个您可能感兴趣的答案,已经提到所有笔记本必须位于同一目录中才能成功导入。

在您的情况下,您必须安装 ipynb,然后使用以下行导入 appserver

from ipynb.fs.full.app import app
from ipynb.fs.full.app import server

为了成功导入模块 UAESWEDENStatistics,您要么必须将 .ipynb 文件放入与 [=24= 相同的目录中],或者你必须将那些文件中的代码放入 .py 文件中以支持绝对导入。在这种情况下,您必须将 __init__.py 个文件添加到每个文件夹层次结构中。

总而言之,您的文件夹结构有两个选项,第一个选项:

▾ 1projet/
  __init__.py
▾ apps/
      __init__.py
      Statistics.py
      SWEDEN.py
      UAE.py
app.ipynb
index.ipynb

进口:

from ipynb.fs.full.app import app
from ipynb.fs.full.app import server
from 1projet.apps import UAE, SWEDEN, Statistics

第二个选项:

app.ipynb
index.ipynb
Statistics.ipynb
SWEDEN.ipynb
UAE.ipynb

进口:

from ipynb.fs.full.app import app
from ipynb.fs.full.app import server
from ipynb.fs.full.Statistics import *
from ipynb.fs.full.SWEDEN import *
from ipynb.fs.full.UAE import *