Python 3.10及以上版本相当于 `distutils` 包

编程语言 2026-07-12

我正在使用Python 3.12,想要安装 ttpy package 的1.2.1版本。如果我运行 pip install ttpy==1.2.1 命令,会因为 ModuleNotFoundError: No module named 'numpy.distutils' 而报错,因为 distutils 在Python 3.10中已被弃用。

我尝试更新 ttpysetup.py 文件中的导入语句:

from numpy.distutils.core import setup
from numpy.distutils.misc_util import Configuration

第一行可以改为 from distutils.core import setup。那么第二行应该怎么改?我尝试在 distutilssetuptools 中寻找等效的模块,但未能找到。相关问题(如 How can one fully replace distutils, which is deprecated in 3.10?Why did I get an error ModuleNotFoundError: No module named 'distutils'? 等)也并没有帮助。

我正在使用 setuptools-80.9.0distutils-3.12.8

解决方案

ttpy 最后一次在2017年 3月发布,距今将近十年,在 项目的GitHub页面 上也没有最近的活动。没有定期维护,即使你能绕过distutils/installer的问题,也很难在Python 3.12上正常工作。问题跟踪中也有其他人遇到类似的问题(如 #97),但该项目似乎已被放弃。

事实上,直到2021年 10月才发布Python 3.10,而在 ttpy==1.2.1 发布时,Python的最新版本是3.6。

你需要找到一个替代的包,或降级你的Python运行时。

站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。

相关文章