我正在用uvloop测试python代码的性能。我得到'uvloop‘没有属性'EventLoopPolicy’错误。我使用的是python 3.7和uvloop 0.13.0 pycharm
我尝试更改解释器,重新安装uvloop,但没有一个不起作用。有谁能告诉我问题出在哪里吗?

发布于 2020-01-22 03:53:06
我看到您使用的是Mac机,但我刚刚在我的CentOS7.x服务器上通过正确设置对uvloop Python包的权限修复了这个问题。这很麻烦,因为(至少在CentOS上)一些pip安装的Python包在/usr/local/lib/python3.7/site-packages中运行,而另一些在/usr/local/lib64/python3.7/site-packages中运行。
检查我的lib64目录中的文件在我修复它之前是什么样子的:
me@myserver /usr/local/lib64/python3.7/site-packages
$ ll
total 16
drwxr-xr-x. 3 root root 4096 Jan 17 15:38 click
drwxr-xr-x. 2 root root 134 Jan 17 15:38 Click-7.0.dist-info
drwxr-x---. 4 root root 74 Jan 17 15:42 httptools
drwxr-x---. 2 root root 141 Jan 17 15:42 httptools-0.0.13-py3.6.egg-info
drwxr-x---. 3 root root 4096 Jan 17 15:43 pydantic
drwxr-x---. 2 root root 111 Jan 17 15:43 pydantic-1.3.dist-info
drwxr-x---. 5 root root 4096 Jan 17 15:43 uvloop
drwxr-x---. 2 root root 141 Jan 17 15:43 uvloop-0.14.0-py3.6.egg-info
drwxr-xr-x. 4 root root 4096 Jan 17 15:38 websockets
drwxr-xr-x. 2 root root 134 Jan 17 15:38 websockets-8.1.dist-info除非我以root用户身份运行,否则uvloop文件是不可访问的,这就是导致错误的原因。在你的Mac上,尝试找到你的uvloop包的安装位置,并确保你的脚本可以访问它。
发布于 2020-01-22 03:55:31
将您自己的文件重命名为uvloop.py以外的名称,例如test_uvloop.py。
您让自己的文件与要使用的库具有相同的名称,这会混淆Python的导入机制。
https://stackoverflow.com/questions/58195742
复制相似问题