![](/img/trans.png)
[英]Using chflags from the os module or dir_util from the distutils module results in an AttributeError (when run on a *nix platform)
[英]What is the replacement for distutils.util.get_platform()?
顯然,Python 3.10 / 3.12 將棄用/刪除 distutils。
不幸的是,我一直無法找到我正在使用的唯一一個 function 的替代品; distutils.util.get_platform()
。 這個有什么替代品?
請注意, platform
不是答案。 我需要一個 function 返回構建二進制輪時使用的完整字符串¹,例如macosx-12-x86_64
。 請特別注意,其中似乎嵌入了特定於平台的邏輯(例如,我知道獲取 macos 版本的唯一其他方法是使用特定於 macos 的 API)。
(¹ 如評論中所述,嚴格來說, distutils.util.get_platform()
不是 function。但是, PEP 425指定“平台標簽只是distutils.util.get_platform()
和所有連字符-
和句點.
替換為下划線_
。”因此,從distutils.util.get_platform()
派生標簽是直接且與平台無關的。因此,可接受的答案可能會給出一個已批准的公共 API,它直接生成平台標簽,或者distutils.util.get_platform()
的兼容替代品。)
對於您的用例, sysconfig
有一個替代品
import sysconfig
sysconfig.get_platform()
這是 wheel 項目本身在從Replaced all uses of distutils with setuptools #428中的代碼中刪除 distutils 時用作distutils.util.get_platform()
的替代品。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.