import ssl lead builtins.ImportError: DLL load failed problems

# -*- 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}"  

Reproduced in: https: //my.oschina.net/cppblog/blog/3057659

Guess you like

Origin blog.csdn.net/weixin_34388207/article/details/91887344