听说用uvloop替换python自带的asyncio的事件循环,协程效率至少翻一番?饶有兴致的下了这个第三方模块。结果执行代码半路就报错,抛出NotImplementedError异常,一脸懵逼的我百度了一会也没找到答案。
uvloop是MagicStack的一个开源项目,我猜测可能是Python3.9刚出来目前还不支持吧,本想去git上向他们反映一下,没想到早就有大佬提了issus
我发现下Python3.9就是个错误的选择,本来在Linux上的编译安装就比较麻烦,还要解决一大堆依赖问题。前不久才费尽心思搞定了Scrapy的安装。能跑爬虫已经是不错了,这种问题也就忍了吧。希望uvloop能及时升级。
Now,要实现预期目标有两种解决方案:
沙箱隔离
”,后期可以根据需要启动不同的Python环境,运行不同需求的代码。该方法的兼容性好,因此,综合评估后选用该方案实现在同一个本地机配置不同的Python运行环境。
Question: 在已安装了Python3.9运行环境的Mac本地机上再装Anaconda,是否会引起Python的版本冲突,是否会【自动格式化本地的Python3.9运行环境+第三方库】?
Answer: 不影响,因为Anaconda和原机的Python是并行的,因此并不会冲突,不过亲测部分第三方库会受影响,但已配置好的Python3.9+Jupyter Notebook等并未受任何影响。
下载完毕,点击安装,之后一直点“继续”【类似其他APP安装】,其中有一项需勾选【仅允许本账号】or【所有账号】,我选的是【仅允许本账号】;另外,安装路径需要选择一下,我直接选默认路径,其他照提示操作即可。最后,提示安装完毕。
查看miniconda是否安装成功,在终端执行命令conda -V
或者conda --version
检测是否安装成功,若成功会打印conda的版本号,如下图:
5. 创建一个虚拟环境,并安装指定版本Python
上述操作,仅实现了在同一台本地机上配置不同版本的Python运行环境,但后期还涉及大量的代码调试工作,直接在终端通过ptyhon xxx.py
运行文件,显然无法满足分段调试运行的需求,因此需引入类似Sublime Text的第三方编译器便于代码调试、执行。
2. 替换为如下内容,并重命名保存文件:
py37tf114.sublime-build
。py37tf114
,【勾选刚自定义好的编译系统】即可启动相应配置路径下的Python运行环境。
选择激活环境后可以弹出环境列表,选择需要的环境,如:py37tf114。
代码写好后,快捷键command + b
即可执行自己的代码;
b,且较它高级,因为可以实现交互调试)