首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何确定Python脚本正在运行的操作系统是否类似Unix?

如何确定Python脚本正在运行的操作系统是否类似Unix?
EN

Stack Overflow用户
提问于 2013-08-27 18:32:16
回答 2查看 3.2K关注 0票数 5

我试图从Python脚本中判断操作系统是否基于Unix。我可以想出两种方法来做到这一点,但这两种方法都有缺点:

  • 检查platform.system()是否在元组中,如("Linux", "Darwin")。问题是,我不想提供每个Unix类系统的列表,特别是有许多*BSD品种。
  • 检查函数os.fchmod是否存在,因为此函数仅在Unix上可用。这看起来不像是一种干净的或“毕达克”的方式。
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-08-27 18:37:01

要做到这一点,毕达通的方法是不关心你在哪个平台上。

如果有多个不同的工具可以根据平台来完成某件事情,那么将它们抽象到一个函数或类后面,如果在当前平台上没有该工具,那么函数或类应该尝试一个工具并转移到另一个工具。

票数 6
EN

Stack Overflow用户

发布于 2013-08-27 22:44:28

代码语言:javascript
复制
import sys
if 'win' in sys.platform():
    #windows
else:
    #not windows

或者,您可以尝试导入依赖于平台的库。

代码语言:javascript
复制
try:
    import windows_only as generic
except ImportException:
    try:
          import unix_only as generic
    except ImportException:
          import stdlib.module as generic

 print generic.common_function()

然后是永远可靠的

代码语言:javascript
复制
>>> import os
>>> os.name
nt
票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18472956

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档