dask worker 无法导入模块
dask worker cannot import module
我正在 运行 一个 dask 集群和一个 worker w。 16 个内核,使用 CLI 实用程序。
总的来说,它似乎工作得很好。
但是,出于某种原因,它不会在 cwd 中导入模块。
我尝试从我的笔记本实例中 运行 以下内容:
def tstimp():
import os
return os.listdir()
c.run(tstimp)
我得到以下输出:
{'tcp://192.168.1.90:35885': ['class_positions.csv',
'.gitignore',
'README.md',
'fullrun.ipynb',
'.git',
'rf.py',
'__pycache__',
'dask-worker-space',
'utils.py',
'.ipynb_checkpoints']}
请注意,此处列出了模块 rf.py。
因此应该可以将它导入到 worker 中,但是当我 运行 以下代码时:
def tstimp():
import rf
return 42
c.run(tstimp)
我收到此错误:ModuleNotFoundError:没有名为 'rf'
的模块
为什么会出现此错误?
似乎当前目录没有添加到工人的python路径中。
您应该可以通过将其添加到路径来解决此问题。
def tstimp():
import sys
sys.path.append('.')
import rf
return 42
c.run(tstimp)
我正在 运行 一个 dask 集群和一个 worker w。 16 个内核,使用 CLI 实用程序。 总的来说,它似乎工作得很好。 但是,出于某种原因,它不会在 cwd 中导入模块。 我尝试从我的笔记本实例中 运行 以下内容:
def tstimp():
import os
return os.listdir()
c.run(tstimp)
我得到以下输出:
{'tcp://192.168.1.90:35885': ['class_positions.csv',
'.gitignore',
'README.md',
'fullrun.ipynb',
'.git',
'rf.py',
'__pycache__',
'dask-worker-space',
'utils.py',
'.ipynb_checkpoints']}
请注意,此处列出了模块 rf.py。 因此应该可以将它导入到 worker 中,但是当我 运行 以下代码时:
def tstimp():
import rf
return 42
c.run(tstimp)
我收到此错误:ModuleNotFoundError:没有名为 'rf'
的模块为什么会出现此错误?
似乎当前目录没有添加到工人的python路径中。 您应该可以通过将其添加到路径来解决此问题。
def tstimp():
import sys
sys.path.append('.')
import rf
return 42
c.run(tstimp)