2

我第一次使用 azure databricks 读取一些文件并尝试将 python 与 dbutils.fs.ls("/mnt") 一起使用

但是我收到一条错误消息,说 dbutils 没有 fs 模块。我正在阅读并说所有数据块都已经带有 dbutils。

AttributeError: module 'dbutils' has no attribute 'fs'

在此处输入图像描述

如果我做

print(dir(dbutils))

['Console','DBUtils','FileInfo','Iterable','ListConverter','MapConverter','MountInfo','NotebookExit','Py4JJavaError','SecretMetadata','SecretScope','WidgetsHandlerImpl',' builtins '、' cached '、' doc '、' file '、' loader '、' name '、' package '、' spec '、'absolute_import'、'makeTensorboardManager'、'namedtuple'、'print_function'、'range' , 'stderr', 'stdout', 'string_types', 'sys', 'zip']

我发现它假设库已经安装了 https://docs.databricks.com/user-guide/dev-tools/dbutils.html#dbutils

有魔术吗?我想检查我是否安装了一个文件,如果没有安装它并卸载它。

4

2 回答 2

6

如果您在笔记本中导入 dbutils ,您将收到此错误“AttributeError: module 'dbutils' has no attribute 'fs'” 。无需进行此导入,因为 dbutils 在启动时在笔记本中可用。print(dir(dbutils)) 应该返回

['CredentialsHandler','FSHandler','LibraryHandler','NotebookHandler','PreviewHandler','SecretsHandler',' call ',' class ',' delattr ',' dict ',' dir ',' doc ',' eq '、' format '、' ge '、' getattr '、' getattribute '、' getstate '、' gt '、' hash '、' init '、' init_subclass '、' le '、'lt ', '模块', ' ne ', ' new ', 'reduce '、' reduce_ex '、' repr '、' setattr '、' sizeof '、' str '、' subclasshook '、' weakref '、'entry_point'、'help'、'shell'、'widgets']

您不需要重新启动集群,您可以从工作区中的清除选项卡中“清除状态”,或者您可以“导入 pyspark.dbutils”。

于 2020-10-22T11:58:20.350 回答
0

以下命令dbutils.fs.ls("/mnt")在 databricks 中运行良好,如果问题仍然存在,请重新启动集群。

作为参考,请访问以下链接

于 2019-02-14T12:11:14.383 回答