我的编程空间,编程开发者的网络收藏夹
学习永远不晚

[Python之道] 几种判断操作系统

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

[Python之道]  几种判断操作系统

在实际项目中有时候不知道操作系统的类型,比如是Windows、OS X、*Unix?而Python代码虽说是跨平台(CrossPlatform)的,但是毕竟他们还是有些不同的,有的函数方法只能在某些操作系统下实现,这时考虑到程序的可移植性,需要在代码中对当前所在的操作系统做一个判断。

如果只想判断操作系统的类型,可调用 sys 库中的 platform 属性: sys.platform 。它能返回简单的属性:操作系统类型(Windows?Linux?还是其他)。例如,在Windwos 10 64位系统下Python2的解释器中运行,显示结果 win32 ;Python3的解释器中运行,显示结果也为 win32 。Windows 7 64位系统下显示结果同Win10。Debian 9(一个Linux的发行版)下Python2的显示结果为 linux2 ,Python3的显示结果为 linux 。这说明我们可以用 win32 这个返回值来判断当前系统是Windwos,返回 linux 则说明是Linux系统。(由于手上没有Windows 32位版本的系统,故没有测试在它们上门的运行结果,猜测也差不多;另外十分好奇Linux python2返回的结果中为什么会有一个2……)

还有一种方法是调用 os 库中的 name 属性: os.name 。它的返回值有两种: ntposix 。其中, nt 表示Windwos系操作系统, posix 代表类Unix或OS X系统。

那如果我们想要知道更详细的信息呢?想要更详细的区分?这时候就要用到 platform 库了。
platform.system 方法会返回当前操作系统的类型,Windows?Linux?OS X?Unix?FreeBSD?它能比较详细的区分。(其他的一般只能识别Windows和非Windwos)
platform.release 方法会返回当前操作系统的版本。笔者的测试环境是Windows 10 64位,它返回的结果是 10 。(Python2和Python3都一样)。相应的,如果是Windows 7,则会返回 7 ;Windows XP则返回 XP有点特殊的是对于Linux发行版,它返回的是内核(kernel)的版本号。 这点要注意。
platform.version 方法返回的则是当前系统的版本号,这个就不细说了。
platform.machine 方法返回的是系统的结构,64位or32位。
platform.uname 方法返回一个 元组 ,里面包含了当前操作系统的更详细的信息,方便调用。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

[Python之道] 几种判断操作系统

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

[Python之道] 几种判断操作系统

在实际项目中有时候不知道操作系统的类型,比如是Windows、OS X、*Unix?而Python代码虽说是跨平台(CrossPlatform)的,但是毕竟他们还是有些不同的,有的函数方法只能在某些操作系统下实现,这时考虑到程序的可移植性,
2023-01-31

架构修炼之道 | 一个传统网关系统有几种 “死” 法

本文节选自《架构修炼之道》,作者京东王新栋。图 | meghan-holmes-779221-unsplash这里说的传统,是按照网关技术演进的阶段划分的,从同步到半同步,再到全异步,我们将同步和半同步技术下的网关称为“传统”网关,同步网关
2023-06-03

Android操作系统介绍之11种传感器

Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。接下来通过本文给大家介绍Android操作系统介绍之11种传感器。 在Android2.3
2022-06-06

win8系统下磁盘分区的几种操作方式介绍

在Win8系统下,磁盘分区可以通过以下几种方式进行操作:1. 使用磁盘管理工具:Win8系统自带了一个磁盘管理工具,可以通过控制面板中的“管理工具”找到。在磁盘管理工具中,可以对磁盘进行分区、格式化、扩展、压缩等操作。2. 使用命令行工具:
2023-08-30

Shell脚本判断Linux系统是32位还是64位的几种方法分享

一行就能搞定,输出32或者64。 可以用“getconf WORD_BIT”和“getconf LONG_BIT”获得word和long的位数,64位系统中应该分别得到32和64。 参考代码如下:ldconfigif [ $(getconf
2022-06-04

漏洞修补之道:确保操作系统安全无忧

漏洞修补指南:保障操作系统安全
漏洞修补之道:确保操作系统安全无忧
2024-02-29

python之操作系统介绍,进程的创建

操作系统(英语:operating system,缩写作 OS)是管理计算机硬件与软件资源的计算机程序,同时也是计算机系统的内核与基石。操作系统需要处理如管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统
2023-01-30

操作系统与物联网的难点与痛点:技术挑战和解决之道

操作系统与物联网的难点与痛点主要体现在技术挑战上,包括资源受限、异构性、安全性和可靠性等。本文分析了这些挑战,并提出了相应的解决之道,为物联网的发展提供技术支撑。
操作系统与物联网的难点与痛点:技术挑战和解决之道
2024-02-04

斩断企业 IT 混乱的戈耳狄之结:服务器操作系统标准化

服务器操作系统标准化是斩断企业 IT 混乱的戈耳狄之结,本文介绍了服务器操作系统标准化的必要性、步骤和注意事项,并通过演示代码示例来说明如何进行服务器操作系统标准化。
斩断企业 IT 混乱的戈耳狄之结:服务器操作系统标准化
2024-02-21

编程热搜

目录