Python3中无法导入ssl模块的解决办法和python3.7 ModuleNotFoundError: No module named bz2解决办法

一、Python3中无法导入ssl模块的解决办法

1.安装完python3,在运行python文件时提示找不到ssl模块。

[root@yz]# python
>>> import ssl
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/python37/lib/python3.7/ssl.py", line 60, in <module>
import _ssl # if we can't import it, let the error propagate
ImportError: No module named _ssl
>>>

2.查看openssl安装包,命令如下:

rpm -aq|grep openssl

发现缺少openssl-devel包 

3.安装openssl-devel包命令:

 yum install openssl-devel -y

再次使用命令查看:rpm -aq|grep openssl,发现已经不再缺少。

4.重新编译python

  进入到python的解压目录,#修改Setup文件
  

vi ..../Python-3.7.0/Modules/Setup

#修改结果如下:

# 通过输入:?ssl 快速查找到定位到以下内容


# Socket module helper for socket(2)
_socket socketmodule.c timemodule.c    #去除该行注释(备注)

# Socket module helper for SSL support; you must comment out the other
# socket line above, and possibly edit the SSL variable:
#SSL=/usr/local/ssl
_ssl _ssl.c \      #去除该行注释(备注)
-DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \  #去除该行注释(备注)
-L$(SSL)/lib -lssl -lcrypto         #去除该行注释(备注)

 

5.重新编译安装python.

6.终端输入python,再输入import ssl不报错,测试成功

二、python3.7 ModuleNotFoundError: No module named bz2解决办法

1.终端输入如下命令

yum install zlib zlib-devel
yum -y install bzip2 bzip2-devel ncurses openssl openssl-devel openssl-static xz lzma xz-devel sqlite sqlite-devel gdbm gdbm-devel tk tk-devel libffi-devel

2.在python安装目录输入make distclean,然后重新编译安装python.

注:非root权限的时候下载包_bz2.cpython-37m-x86_64-linux-gnu.so,如果下载的是36m,装的是37的python版本,将36改为37。同时将该包移动到python3安装目录的lib/python3.7/lib-dynload即可

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值