Python使用大漠插件前的准备工作

1.大漠插件只能使用32位的Python

大漠插件的DLL调用只有32位,因此,我们只能使用32位的Python调用大漠插件。

使用64位的Python调用大漠插件,是会报错的。

Traceback (most recent call last):

  File A:\PythonProgram\Anaconda\envs\spyder\lib\site-packages\win32com\client\dynamic.py:86 in _GetGoodDispatch
    IDispatch = pythoncom.connect(IDispatch)

com_error: (-2147221021, '操作无法使用', None, None)


During handling of the above exception, another exception occurred:

Traceback (most recent call last):

  File E:\Python\PYQT工作区\未命名0.py:18 in <module>
    dm = win32com.client.Dispatch('dm.dmsoft')

  File A:\PythonProgram\Anaconda\envs\spyder\lib\site-packages\win32com\client\__init__.py:117 in Dispatch
    dispatch, userName = dynamic._GetGoodDispatchAndUserName(dispatch, userName, clsctx)

  File A:\PythonProgram\Anaconda\envs\spyder\lib\site-packages\win32com\client\dynamic.py:106 in _GetGoodDispatchAndUserName
    return (_GetGoodDispatch(IDispatch, clsctx), userName)

  File A:\PythonProgram\Anaconda\envs\spyder\lib\site-packages\win32com\client\dynamic.py:88 in _GetGoodDispatch
    IDispatch = pythoncom.CoCreateInstance(

com_error: (-2147221164, '没有注册类', None, None)

因此,如果电脑上没有安装有32的Python,那么需要先进行安装。

这里使用Anaconda来对python进行版本管理,并且通过anaconda实现32位和64位python共存。

如果没有Anaconda,那么先安装Anaconda就可以了。

2.32位和64位的Python有什么不同?

Python64位能够用更大的内存空间,Python64位可以在64位的系统下运行,但是不能在32位系统下运行。

Python32位能够在32位和64位上运行,但是内存空间较小。

64bit软件和32bit软件最大的区别是64bit的软件可以同时操作大于4GB的内存。

注意这里的内存指的是地址空间,而不是物理内存。

比如现在有一个10GB的数据库需要进行排序。64bit的软件可以malloc一个10GB的空间把整个数据库“放进”内存然后使用任意经典排序算法,而32bit的软件在malloc时就会崩溃(out-of-memory)。

怎么判断自己使用的Python是32位还是64位的?

import platform
ver = platform.architecture()
print(ver)

使用32位的Python运行结果如下:

('32bit', 'WindowsPE')

3.查看电脑的环境

在电脑的左下角,右键单击弹出菜单,选择运行,左键单击,然后输入cmd,点击确定,进入命令窗口。

在cmd界面,即可输入命令代码。

在命令行,输入以下命令,即可查看当前的Python环境。

conda info

可以看到,我现在的环境是64位的:platform : win-64

	 active environment : None
       user config file : C:\Users\caogu\.condarc
 populated config files : C:\Users\caogu\.condarc
          conda version : 4.12.0
    conda-build version : 3.21.4
         python version : 3.8.8.final.0
       virtual packages : __win=0=0
                          __archspec=1=x86_64
       base environment : A:\PythonProgram\Anaconda  (writable)
      conda av data dir : A:\PythonProgram\Anaconda\etc\conda
  conda av metadata url : None
           channel URLs : https://repo.anaconda.com/pkgs/main/win-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/r/win-64
                          https://repo.anaconda.com/pkgs/r/noarch
                          https://repo.anaconda.com/pkgs/msys2/win-64
                          https://repo.anaconda.com/pkgs/msys2/noarch
          package cache : A:\PythonProgram\Anaconda\pkgs
                          C:\Users\caogu\.conda\pkgs
                          C:\Users\caogu\AppData\Local\conda\conda\pkgs
       envs directories : A:\PythonProgram\Anaconda\envs
                          C:\Users\caogu\.conda\envs
                          C:\Users\caogu\AppData\Local\conda\conda\envs
               platform : win-64
             user-agent : conda/4.12.0 requests/2.25.1 CPython/3.8.8 Windows/10 Windows/10.0.19041
          administrator : False
             netrc file : None
           offline mode : False

3.安装和切换32位的Python

# 查看当前工作环境
conda info  

# 列出所有的环境
conda env list
conda info -e
conda info --envs

# 切换到32位
set CONDA_FORCE_32BIT=1    
# 切换到64位
set CONDA_FORCE_32BIT=0    

# 在虚拟环境env_name中安装python
# conda create -n 环境名称 python=版本号  
conda create -n python32 python=3.8

# 激活环境
conda activate python32
# 关闭环境
conda deactivate python32
# 移除环境  
conda remove -n python32 --all 

# 安装库 
# 在虚拟环境中安装相关的库
conda create -n python32 numpy python=3.8
conda create -n python32 numpy matplotlib scipy pandas scikit-learn python=3.8
# 也可以使用pipinstall或conda install进行安装
pip install pandas
conda install pandas

使用**set CONDA_FORCE_32BIT=1命令切换到32位的环境,然后使用conda create -n python32 python=3.8**命令,就可以自动下载并安装32位的Python了。

出现这个界面,表明32位的Python安装成功了。

done
#
# To activate this environment, use
#
#     $ conda activate python32
#
# To deactivate an active environment, use
#
#     $ conda deactivate

Retrieving notices: ...working... done

4.安装Spyder

安装好了32位的Python后,建议安装Spyder。

Spyder是Python的集成开发环境,功能强大,写代码时非常好用。

首先,使用set CONDA_FORCE_32BIT=1切换到32位的平台。

然后,使用conda activate python32命令,切换到python32的环境。

最后,使用安装命令:

conda install spyder

出现这个界面,表明安装成功。

done
Retrieving notices: ...working... done

5.安装常用的库

用32位的Python安装包时,出现错误:

(python32) C:\Users\caogu>pip install paddlepaddle
Unable to create process using 'A:\PythonProgram\Anaconda\envs\python32\python.exe A:\PythonProgram\Anaconda\envs\python32\Scripts\pip-script.py install paddlepaddle'

解决方法:

  • 为了和64位的Python区分开来,把python.exe文件改名为:python32.exe。
  • 使用python32 -m pip install --upgrade命令,更新pip。
  • 如果已经是最新版本,可以强制更新:python32 -m pip install --upgrade --force-reinstall pip

6.更换Aanaconda的默认下载和更新地址

找到C:\Users\用户名.condarc文件,用txt打开,替换里面的内容为:

channels:
  - defaults
show_channel_urls: true
channel_alias: https://mirrors.tuna.tsinghua.edu.cn/anaconda
default_channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
  conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

记得备份原文件。

你可能感兴趣的:(Python大漠插件,python,开发语言)