Python 判断当前操作系统的几种方法

本文介绍三种Python判断当前操作系统的实用方法:使用os.name获取系统类型如posix或nt;利用sys.platform获得更详细的平台信息,如win32或darwin;通过platform.system()直接得到操作系统名称。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文介绍 Python 判断操作系统的3种方法。以下的方法将分为这几部分:

  • Python os.name
  • Python sys.platform
  • Python platform.system()

Python os.name

Python 判断操作系统的方法可以使用 os.name,这里以 Python 3 为例,os.name 会返回 posixntjava 这几种结果。使用前需要先 import os

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import os
print(os.name)

# 在 Ubuntu 16.04 上的输出如下:
# posix

# 在 MacOS 10.15.7 上的输出如下:
# posix

# 在 Windows 10 上的输出如下:
# nt

os 模块下还有另一个 uname() 函数可以使用,uname() 会返回操作系统相关的版本信息。

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import os
print(os.uname())

# 在 Ubuntu 16.04 上的输出如下:
# sysname='Linux', nodename='shengyu', release='4.10.0-40-generic', version='#44~16.04.1-Ubuntu SMP Thu Nov 9 15:37:44 UTC 2017', machine='x86_64'

# 在 MacOS 10.15.7 上的输出如下:
# posix.uname_result(sysname='Darwin', nodename='shengyudeMacBook-Pro.local', release='19.6.0', version='Darwin Kernel Version 19.6.0: Thu Sep 16 20:58:47 PDT 2021; root:xnu-6153.141.40.1~1/RELEASE_X86_64', machine='x86_64')

# Windows 下没有 os.uname()

sys.platform 有更细的分类,下一节会介绍。

Python sys.platform

sys.platform 返回的结果有以下几种情况:

  • AIX: 'aix'
  • Linux: 'linux'
  • Windows: 'win32'
  • Windows/Cygwin: 'cygwin'
  • macOS: 'darwin'

如果要用 sys.platform 判断操作系统,可以使用 startswith(),像 linuxlinux2 的情况就可以被包含在以 linux 开头的字符串,写在同一个条件式里。

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import sys

if sys.platform.startswith('linux'):
    print('Linux')
elif sys.platform.startswith('darwin'):
    print('macOS')
elif sys.platform.startswith('win32'):
    print('Windows')

Python platform.system()

Python 判断操作系统的方法可以使用 platform.system() 函数,platform.system() 会返回操作系统的名称,例如:LinuxDarwinJavaWindows 这几种。如果无法判断操作系统的话会返回空字符串。

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import platform

print(platform.system())
print(platform.release())

# 在 Ubuntu 16.04 上的输出如下:
# Linux
# 4.10.0-40-generic

# 在 MacOS 10.15.7 上的输出如下:
# Darwin
# 19.6.0

# 在 Windows 10 上的输出如下:
# Windows
# 10
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

知来者逆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值