概况
在Ubuntu系统安装python3.7,并安装模块pandas也成功,导入模块imort pandas时却提示 Could not import the lzma modle; Your installed Python is incomplete。(找不到lzma模块,你安装的python不完整)
解决方案
从pypi官方搜索查到lzma模块实际实backports.lzma ,lzma模块pypi文档,然而直接pip安装是不成的,也会报错,官方安装文档介绍了两种方法一种是conda安装最简单,一行就可以解决:
$ conda install -c conda-forge backports.lzma
如果是 RedHat/CentOS系统可以如下分三步安装(顺序不能乱):
$ sudo yum install xz-devel
$ sudo yum install python-backports-lzma
$ pip install backports.lzma
如果是通用linux系统分两步安装(顺序不能乱):
$ sudo apt-get install liblzma-dev
$ pip install backports.lzma
坑
完成这几部后,发出错误Could not import the lzma modle依然提示!其实还有一步要做,找到文件:/usr/local/lib/python3.7/lzma.py 在文件的27行可以看到:
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:
from backports.lzma import *
from backports.lzma import _encode_filter_properties, _decode_filter_properties