在Zeppelin 0.10.0(Python3.7)中查找指定字符串模块遇阻求助
如何在Zeppelin 0.10.0的%livy.pyspark环境中查找含指定关键词的Python模块
针对你遇到的问题,这里提供可靠的解决方法,以及失败原因的说明:
推荐方法:使用sys模块直接筛选已加载模块
在%livy.pyspark段落中执行以下代码,直接遍历Python保存已加载模块的字典,精准筛选名称包含"url"的模块:
import sys # 筛选名称含"url"的已加载模块(忽略大小写) target_modules = [mod for mod in sys.modules.keys() if 'url' in mod.lower()] print(target_modules)
这个方法不受Livy环境中help命令的限制,结果准确且不会触发异常。
替代方法:修正help命令的使用方式
如果你坚持使用help的modules功能,正确的语法是将关键词作为modules的参数传入,但由于Livy环境的局限性,可能仍会出现异常。执行代码:
help('modules url')
之前操作失败的原因
- 直接输入
modules url:这不是合法的Python语句,因此触发语法错误。 help('modules url')报错:Livy环境中部分模块的加载器(loader)信息缺失,导致help命令无法解析模块元数据,抛出AttributeError: 'NoneType' object has no attribute 'loader'。help('url'):不存在名为"url"的顶层Python模块,因此提示无相关文档。
内容的提问来源于stack exchange,提问作者kc2001
相关产品推荐
相关产品推荐

