我应该什么时候用操作系统名称对比。系统平台对比。平台.系统()?

用户

在Python中至少有三种方法可以检测OS/platform。在

每种方法的理想应用是什么?什么时候应该用一种方法代替另一种方法?在


编辑:我的具体用例是安装时和运行时检查依赖关系。如果我在“Windows”上,我不想在setup.py中安装某些库,因为它需要visualstudio。然后,在运行时,我想检查依赖项是否可用(它可能不在“Windows”上)。在

编辑2:如果能看到一个简短的例子,说明什么时候需要操作系统的每一级细节,那也很好。在


已被浏览了6033次
更新日期: 2020-10-26 06:55:06
1 个回答
fefe Tyson

这取决于您需要多少信息。

^{}只会让你对你所处的环境有一个高层次的了解(例如POSIX与windowsnt),甚至连操作系统名称都没有。文件上说:

See alsosys.platform has a finer granularity. os.uname() gives system-dependent version information. The platform module provides detailed checks for the system’s identity.

^{}为您提供了更多的信息,并且可以告诉您是否正在运行Linux和FreeBSD,例如。在

^{}模块将为您提供最多的信息,包括您正在运行的操作系统的版本以及处理器信息。在

所以你应该明确你到底想完成什么,然后你就可以清楚地知道哪种方法是最合适的。在

评论 - 2020年8月7日 23:47

最新Python问答

推荐Python问答