文档
注册

缺少lzma模块

问题描述

运行训练脚本显示如下错误:

   File “/usr/local/python3.7.5/lib/python3.7/lzma.py”,line27,in <module>
     from _lzma import*
ModuleNotFoundError: No module named '_lzma'

可能原因

Python 3.3版本以上会自带lzma模块,若用户是通过源码安装的Python,且系统中没有安装lzma-dev包,就不会安装lzma模块。

解决方法

  1. 如果用户正在使用的Python是通过源码安装的,需要先安装系统依赖。

    此处以CentOS与Ubuntu操作系统为例。

    • Ubuntu
      apt-get install -y liblzma-dev
    • CentOS
      yum install -y xz-devel 
      yum install -y python-backports-lzma

      个别OS(如openEuler 20.03 LTS)安装xz-devel依赖后即可安装lzma,无需安装python-backports-lzma依赖。

  2. 执行如下命令安装lzma。
    pip3 install backports.lzma
  3. 根据报错信息中的报错路径,执行如下命令修改“lzma.py”文件(此路径仅为示例,请用户以实际情况为准)。
    vi /usr/local/python3.7.5/lib/python3.7/lzma.py

    修改内容如下:

    修改前:
    from _lzma import *
    from _lzma import _encode_filter_properties, _decode_filter_properties
    修改后:
    try:
        from _lzma import *
        from _lzma import _encode_filter_properties, _decode_filter_properties
    except ImportError:
        from backports.lzma import *
        from backports.lzma import _encode_filter_properties, _decode_filter_properties
搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词