Python虚拟环境中Python 3.5.2无法安装asyncio,提示最低要求3.5.3,该如何解决?

怎么能把自己虚拟环境中的 python3.5 改成3,6


Python虚拟环境中Python 3.5.2无法安装asyncio,提示最低要求3.5.3,该如何解决?
7 回复

3.5 中不是已经自带 asyncio 了吗?


这个问题是因为asyncio在Python 3.5.2中还不是一个独立的PyPI包,它是标准库的一部分。从Python 3.5.3开始,asyncio才在PyPI上有了一个独立的“backport”包,用于在旧版本Python中提供新特性。所以当你运行pip install asyncio时,pip会尝试安装这个PyPI包,而它的元数据里声明了需要Python版本>=3.5.3,因此和你的3.5.2冲突了。

根本原因:在Python 3.5.2中,你不需要、也不应该从PyPI安装asyncio。它已经内置在解释器里了。

解决方案非常简单,分两步:

  1. 不要安装:在你的代码中,直接使用import asyncio即可。删除任何安装asyncio包的尝试(比如从requirements.txt中移除asyncio这一行)。
  2. 验证使用:创建一个简单的测试文件来确认。
# test_asyncio.py
import asyncio
import sys

print(f"Python 版本: {sys.version}")
print(f"asyncio 版本: {asyncio.__version__}")

async def main():
    print("Hello from asyncio!")

asyncio.run(main())

在你的虚拟环境中运行这个脚本:

python test_asyncio.py

你应该能看到输出,证明asyncio模块工作正常。

总结:对于3.5.2,直接用内置的,别用pip装。

啊  是 aiohttp ==

pyenv 你值得拥有,此后你想用什么版本 py 就随意了。

你不能创建一个新的虚拟环境吗?

sudo add-apt-repository ppa:jonathonf/python-3.6

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install -f

sudo apt-get install python3.6

sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.5 100

sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 200

sudo update-alternatives --config python3

print 200

噢对了,安装之前别忘记这些依赖包先安装

python3-dev
build-essential
libssl-dev
libffi-dev
libxml2
libxml2-dev
libxslt1-dev
zlib1g-dev
libcurl4-openssl-dev
zlib
zlib-devel
bzip2
bzip2-devel
ncurses
ncurses-devel
readline
readline-devel
openssl
openssl-devel
openssl-static
xz
lzma
xz-devel
sqlite
sqlite-devel
gdbm
gdbm-devel
tk
tk-devel

回到顶部