最近用 Python 的 Flask 框架开发了一个内部使用的平台,其中用到了 Pandas 来解析 Excel 内容实现一个文件导入的效果,在test环境没问题,结果到了线上 import pandas
的时候报错 /usr/local/python3/lib/python3.6/site-packages/pandas/compat/__init__.py:120: UserWarning: Could not import the lzma module. Your installed Python is incomplete. Attempting to use lzma compression will result in a RuntimeError.
看了下 test 环境的 Python 版本是 Python 3.8.5
,线上的却是 Python 3.6.4
,肯定是 Python 版本不一致导致的问题,暂时先不管版本,解决问题先。
yum install xz-devel
yum install python-backports-lzma
pip install backports.lzma
执行以上安装命令,我在最后 install backports.lzma
的时候,提示我 WARNING: Running pip as root will break packages and permissions. You should install packages reliably by using venv: https://pip.pypa.io/warnings/venv
,那没办法咯,照着提示来,因为我用的是 root 账户,切换了下账户,重新执行了pip install backports.lzma
,即可。
安装完并不代表问题解决啦,还需要找到 lzma.py
进行修改, 我的目录是在 /usr/local/python3/lib/python3.6/
下面,修改如下:
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
大功告成,这个时候执行 import pandas
就没有任何报错啦!
附安装 pandas 的命令
pip install xlrd
pip install openpyxl
pip install pandas
tfmuvl78432BU-支持多种语言,不仅有中文文章,还有很多外文资讯,可以扩展视野。http://m.ikaola.xyz//
白度蜘蛛池http://xystjk.cn///eblpuj76549UI