Python基础:获取平台相关信息
Windows 10家庭中文版,Python 3.6.4,
本文介绍了使用os、platform、sys三个模块获取Python程序的运行平台相关的信息。
os模块:提供 各种各样的操作系统接口
os.name -- 操作系统的名称,一个简称。已有三个被注册了:“posix”,“nt”,“java”,分别代表Unix类系统、Windows系统、Java虚拟机。
我的电脑上运行时,显示为“nt”。
os.cpu_count() -- 获取CPU核的数量。
我的电脑返回8。
上面两个只是获取平台相关信息的属性,此模块还有更多属性和方式用作其它功能,其官方文档相当长。
platform模块:访问平台底层的特征数据
paftform.machine() -- 平台架构——主要指处理器
platform.node() -- 电脑的网络名词
platform.processor() -- 处理器信息
platform.release() -- 操作系统发行信息
platform.system() -- 操作系统名称
platform.version() -- 操作系统版本
platform.uname() -- 返回平台的所有信息,包括上面介绍的,6个属性:system, node, release, version, machine, processor

platform.python_***() -- 返回Python解释器等相关信息,比如版本python_version(), 更有用的是python_version_tuple(),它返回一个元组,便于某些软件安装时判断Python版本以决定是否安装;

platform模块还包含一些各个平台独特的属性,请参考其官网文档。
sys模块:提供了 系统专用 的参数和函数——一些Python解释器使用和维护的变量,以及和解释器交互频繁的函数。
sys.platform -- 获取计算机平台信息(操作系统),可能的值包括sunos*, freebsd*, linux*, win32, cygwin —— Windows/Cygwin, darwin —— Mac OS X。
sys.version -- 获取Python解释器版本信息(文本)
sys.version_info -- Python解释器版本信息(返回一个sys.version_info的实例,包含Python版本信息)

Windows下还有sys.getwindowsversion()获取版本信息,我的结果:
sys.getwindowsversion(major=10, minor=0, build=15063, platform=2, service_pack='')
sys.implementation -- 获取Python解释器的实现版本信息,我的是官网的CPython,显示结果如下:
namespace(cache_tag='cpython-36', hexversion=50726128, name='cpython', version=sys.version_info(major=3, minor=6, micro=4, releaselevel='final', serial=0))
综上所述,要获取Python运行环境的信息,最完整的来源是platform模块,虽然模块较小,但却是专业的,难怪Django等框架会使用platform.python_version_tuple()来获取Python解释器版本并决定是否安装。
Python基础:获取平台相关信息的更多相关文章
- python基础——获取对象信息
python基础——获取对象信息 当我们拿到一个对象的引用时,如何知道这个对象是什么类型.有哪些方法呢? 使用type() 首先,我们来判断对象类型,使用type()函数: 基本类型都可以用type( ...
- Linux sysinfo获取系统相关信息
Linux中,可以用sysinfo来获取系统相关信息. #include <stdio.h> #include <stdlib.h> #include <errno.h& ...
- PHP获取手机相关信息
该PHP操作类实现获取手机号手机头信息,取UA,取得手机类型,判断是否是opera,判断是否是m3gate,取得HA,取得手机IP 代码如下: <?php /** * @desc 手机操作类 获 ...
- 通过runtime获取对象相关信息
通过runtime获取对象相关信息 在这里,本人给大家提供一个runtime关于NSObject的扩展,用来显示各种NSObject中的信息,这有助于你来分析类的组成:) 先准备以下类供测试: Mod ...
- 获取IP相关信息和文件上传
获取IP相关信息 要获取用户访问者的IP地址相关信息,可以利用依赖注入,获取IHttpConnectionFeature的实例,从该实例上可以获取IP地址的相关信息,实例如下: var connect ...
- 获取系统相关信息 (CPU使用率 内存使用率 系统磁盘大小)
引言 在软件开个过程中,对于软件的稳定性和使用率也是我们需要关注的 . 使用sigar来监控,简单方便! 使用说明:下载sigar jar及配合sigar的dll文件来用,需要将dll文件放到JD ...
- Python使用wmi获取Windows相关信息
在使用Python获取Windows系统上的相关的信息可以使用WMI接口来获取, 什么是wmi? WMI是一项核心的Windows管理技术,WMI作为一种规范和基础结构,通过它可以访问.配置.管理和监 ...
- iOS获取手机相关信息
iOS具体的设备型号: #include <sys/types.h> #include <sys/sysctl.h> - (void)test { //手机型号. size_t ...
- Python 实现获取微信好友信息
最近用闲余时间看了点python,在网上冲浪时发现有不少获取微信好友信息的博客,对此比较感兴趣,于是自己敲了敲顺便记录下来. 一.使用 wxpy 模块库获取好友男比例信息和城市分布. # -*- co ...
随机推荐
- 【转】ubuntu16.04安装ncurses-devel
在ubuntu16.04中编译内核时,使用make menuconfig发生错误,说没有安装ncurses-devel. 使用apt install ncurses-devel命令安装该库,没有,然后 ...
- Mythological VI
Description 有\(1...n\)一共\(n\)个数.保证\(n\)为偶数. 小M要把这\(n\)个数两两配对, 一共配成\(n/2\)对.每一对的权值是他们两个数的和. 小M想要知道这\( ...
- 【SDOI2015】序列统计 解题报告
2119: [BZOJ3992][SDOI2015]序列统计 Description 小\(C\)有一个集合\(S\),里面的元素都是小于\(M\)的非负整数. 他用程序编写了一个数列生成器,可以生成 ...
- linux内核分析(网课期末&地面课期中)
堆栈变化过程: Linux内核分析——计算机是如何工作的 计算机是如何工作的?(总结)——三个法宝 存储程序计算机工作模型,计算机系统最最基础性的逻辑结构: 函数调用堆栈,高级语言得以运行的基础,只有 ...
- 第三周 构造一个简单的Linux系统
20135331文艺 首先 在上周内容中我们学习了 计算机三个法宝: 1.存储程序计算机 2.函数调用堆栈 3.中断 本周中得知 操作系统两把宝剑: 1.中断上下文的切换:保存现场和恢复现场 2.进程 ...
- phpredis用法笔记
项目中用到redis集群, 发现phpredis对集群,分布式是有支持的.翻译下相关资料备用. redis扩展地址:https://github.com/phpredis/phpredis, 看到如下 ...
- mac 命令行大杂烩
一.实用的 1.代替 cat 的工具:bat,支持语法高亮.同时显示行号,使用: bat xx.yyy 安装:brew install bat 2.man 命令的替代品:tldr 安装:brew in ...
- 左值与右值,左值引用与右值引用(C++11)
右值引用是解决语义支持提出的 这篇文章要介绍的内容和标题一致,关于C++ 11中的这几个特性网上介绍的文章很多,看了一些之后想把几个比较关键的点总结记录一下,文章比较长.给出了很多代码示例,都是编译运 ...
- Python操作sqlserver 2000
在网上找到了pyodbc这个模块,本人操作系统是 Ubuntu 16.04 , Python 2.7 已经安装了pip 按照 官方文档 的步骤成功安装. 但是需要跨平台. 使用pyodbc在wind ...
- P1099 树网的核 && P2491 [SDOI2011]消防
给定一棵树, 你可以在树的直径上确定一条长度不超过 \(S\) 的链, 使得树上离此链最长的点距离最小, 输出这个距离 P2491 数据范围为 P1099 的 \(1000\) 倍 Solution ...