ANSA导入第三方包需要利用conda。conda可以建立一个虚拟环境,虚拟环境包含了指定版本的python,可以在这个虚拟环境中用conda install安装包。不同的虚拟环境之间的包和python版本是独立的。而ansa可以引用conda的虚拟环境。因此,导入第三方包首先需要在连接互联网的机器上创建conda虚拟环境,其次在虚拟环境中安装包(conda install需要联网),然后把这个虚拟环境复制拷贝到不联网的机器中,最后再添加虚拟环境在ansa中。
我这里是使用 Anaconda ,和其他文章以及文档用的miniconda有所不同。
第一步,创建虚拟环境。首先,在可以联网的机器上打开cmd.exe,定位路径到Anaconda安装路径下的script 文件夹 ,我电脑的路径是https://www.gofarlic.com\Software\anacoda\Scripts,用下列命令创建conda环境:
conda create --name python381 python=3.8.1(注:这里的python版本需要与ansa一样,在ansa中打开scriptEdit,输入python代码:
import sysprint(sys.version)可以看到ansa使用的python版本),用下列命令激活
conda init cmd.execonda activate python381显示

即为成功。再在虚拟环境中安装第三方包,我这里安装的是urllib3。
conda install urllib3第二步,复制虚拟环境。用下面命令复制虚拟环境
conda pack -n python381 -o python381.tar.gz成功后在https://www.gofarlic.com\Software\anacoda\Scripts可以看到文件python381.tar.gz,将这个文件传入不联网的机器中。我的内网机器Anaconda安装到C盘了,为了避免ansa访问不了,修改一下conda环境的默认路径
conda config --add envs_dirs https://www.gofarlic.com/software/anacoda/env
。再将python381.tar.gz复制到上述路径中解压,解压过程中会有同名文件,全部选择替换。完成后打开cmd,进入Anaconda的Scripts的路径激活虚拟环境。
conda init cmd.execonda activate python381第三步,在ansa中配置conda环境。这里官方文档给出的方案是
import sysCONDA_ENV='/HOME/my_name/miniconda3/env/python38/lib/python3.8/site-packages'sys.path.append(CONDA_ENV)但是Anaconda没有这个路径。我找到的办法是,先在 pycharm 导入conda环境(Python Interpreter中选择add interpreter在conda environment界面的using existing environment的下拉框里面选择我们的环境),再执行
import urllib3import sysprint(sys.path)将这里面所有和conda虚拟的环境相关的全部导入手动ansa。最后我在Ansa的ScriptEdit中的代码是
import sysCONDA_ENV=['https://www.gofarlic.com\\software\\anacoda\\env\\python381\\DLLs','https://www.gofarlic.com\\software\\anaconda\\env\\python381\\lib','https://www.gofarlic.com\\software\\anacoda\\env\\python381','https://www.gofarlic.com\\software\\anacoda\\env\\python381\\lib\\site-packages']for a in CONDA_ENV: sys.path.append(a)import urllib3成功运行。
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删