import ssl 导致 builtins.ImportError: DLL load failed的问题

本文解决Anaconda环境迁移后,因系统搜索路径问题导致的import ssl错误。通过修改环境变量或使用fix_os_path函数,将Library/bin目录加入PATH,解决DLL load failed问题。
# -*- coding: utf-8 -*-
'''
 错误: Anaconda3-2019.03-Windows-x86_64.exe创建的envs迁移到其他路径或机器时出现
      import ssl 导致 builtins.ImportError: DLL load failed的问题
 原因: 不在系统的搜索路径
 解决方案:
 方案一:在程序导入ssl前先运行如下 fix_os_path函数
 方案二: 直接将D:\ProgramData\Anaconda3\<environmentName>\Library\bin放入PATH路径
 相关的讨论:
 https://github.com/ContinuumIO/anaconda-issues/issues/10823
'''
import os
import sys
def fix_os_path():
    '''
      将当前python环境中的Library\bin目录放入PATH的搜索路径中去 
    '''
    added_search_path = r"Library\bin"
    dll_path = os.path.join(sys.prefix, added_search_path) 
    path = os.environ['PATH']
    if dll_path not in path:
        os.environ['PATH'] = f"{dll_path};{path}"  

转载于:https://my.oschina.net/cppblog/blog/3057659

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值