【发布时间】:2016-05-27 09:56:00
【问题描述】:
我希望运行一个令人尴尬的并行函数,该函数使用带有 Python 的 Jupyter Notebook 创建绘图(并最终将它们保存到文件中)(编辑 - 我找到了一种更简单的方法来做到这一点here)。我正在尝试最简单的版本,但出现导入错误。
我应该在哪里以及为什么要导入相关模块?我想我正在到处导入它们只是为了确定,但我仍然有一个错误!
导入文件中的位置从 1 到 4 编号
[1] 这条线真的有必要吗?为什么?
[2] 这条线真的有必要吗?为什么?
[3] 这条线真的有必要吗?为什么?
[4] 这条线真的有必要吗?为什么?
以下是我的文件: jupyter 笔记本文件:
import ipyparallel
clients = ipyparallel.Client()
print(clients.ids)
dview = clients[:]
with dview.sync_imports():
import module #[1]
import matplotlib #[2]
import module #[3]
dview.map_sync(module.pll, [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
还有一个python文件名module.py
import matplotlib #[4]
def pll(x):
matplotlib.pyplot.plot(x, '.')
当我运行笔记本时,我得到以下输出
[0, 1, 2, 3, 4, 5]
importing module on engine(s)
importing matplotlib on engine(s)
[Engine Exception]
NameErrorTraceback (most recent call last)<string> in <module>()
(...)
NameError: name 'matplotlib' is not defined
【问题讨论】:
-
引擎是在本地运行还是在另一个系统上运行?
-
@frmdstryr 本地!都在同一台电脑上
-
将 import #4 移到 pll 函数中是否有效?
标签: python python-3.x ipython jupyter-notebook ipython-parallel