Anaconda 创建 32位python虚拟环境


Anaconda 创建 32位python虚拟环境

​ 最近实习在做一个接口自动化数据上传的功能,因为数据是更新的,需要每次上传都查询数据库调用匹配,就不得不面对 python 连接 oracle 。一直很排斥这玩意,我觉得python连接oracle是一个很蹩脚的东西。网上教程其实挺多的,首先安装cx_oracle,安装的时候要注意两个东西:

  • oracle-client架构(有64,也有32)

  • python 架构(一般是64位)

    ​ 然后python oracle—client 和cx_oracle的架构必须是相同的位数,因为开发环境用的是 oracle 32位的客户端,而我默认的python是32位的,所以在尝试驱动的时候一直报错 1047,尝试了bing上能搜到的几乎所有方法,一直不成功,报错大概的意思是 oli.dll 不受支持。

猛然醒悟,这怕是64 位python 和32位 client兼容的问题!

但同时又有另一个问题,就是64位的python是不能直接安装32位的扩展包的,考虑到功能的移植性,最终选择32位的虚拟 py 环境

​ 因为我安装的是64位的conda,所以默认的python,甚至默认的虚拟环境也是 64 位的,通过百度,得知win10 有一个32 位的模式,先切换到32位模式:

set CONDA_FORCE_32BIT=1

​ 切换成功不会有任何的提示信息

然后使用conda创建虚拟环境,此时创建出来的虚拟环境就是32位了

conda create auto -n python=3.6

​ 创建成功后就可以正常的安装 32位的cx_oracle,安装后就一切正常了,数据库也能够正常的连接了

创建完成后,就可以关闭系统的32位模式

``set CONDA_FORCE_32BIT=0`

​ 如此之后,只要激活auto,此时的python就是 32 位的架构了

image-20210507215229340

如图,当我关闭了32位模式后,虚拟环境的python也是32位的架构


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM