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 ...
随机推荐
- UVA.11806 Cheerleaders (组合数学 容斥原理 二进制枚举)
UVA.11806 Cheerleaders (组合数学 容斥原理 二进制枚举) 题意分析 给出n*m的矩形格子,给出k个点,每个格子里面可以放一个点.现在要求格子的最外围一圈的每行每列,至少要放一个 ...
- C++继承与组合的区别
C++程序开发中,设计孤立的类比较容易,设计相互关联的类却比较难,这其中会涉及到两个概念,一个是继承(Inheritance),一个是组合(Composition).因为二者有一定的相似性,往往令程序 ...
- fzyzojP2119 -- 圆圈游戏
说白了,就是这个样子: 这个玩意明显是一个优美的树形结构 是个森林 然后建个虚点0,并且w[0]=0,然后树形dp即可 f[x]=max(w[x],∑f[son]) 难点是:树怎么建? 就要上计算几何 ...
- [POI2008] BLO
link 试题分析 分两种情况考虑. 当此点不是割点是,答案是$2\times (n-1)$. 当是割点时,我们发现这个点把树分成了若干个联通块,只要两两相乘即可. #include<iostr ...
- E - Down or Right Codeforces Round #504 (rated, Div. 1 + Div. 2, based on VK Cup 2018 Final)
http://codeforces.com/contest/1023/problem/E 交互题 #include <cstdio> #include <cstdlib> #i ...
- mac 必备工具
iTerm 可以在一个窗口中垂直.水平分割窗口,而不用切换来切换去 一些基本功能如下: 1.分窗口操作:shift+command+d(横向)command+d(竖向) 2.查找和粘贴:command ...
- struts2为什么action要继承actionSupport类
我们为了方便实现Action,大多数情况下都会继承com.opensymphony.xwork2.ActionSupport类, 并重载(Override)此类里的String execute()方法 ...
- Docker简介与安装配置
目录 Docker简介 什么是Docker 为啥要用容器 Docker Engine Docker架构说明 Docker安装 Docker版本介绍 Ubuntu安装docker-ce CentOS7安 ...
- P3924 康娜的线段树
P3924 康娜的线段树 题目描述 小林是个程序媛,不可避免地康娜对这种人类的"魔法"产生了浓厚的兴趣,于是小林开始教她OI. 今天康娜学习了一种叫做线段树的神奇魔法,这种魔法可以 ...
- Windows下php,mysql,apache相关安装与配置,完善中…
PHP 的安装 由于php是一个zip文件(非install版),安装较为简单解压就行.把解压的 php5.2.1-Win32重命名为 php5.并复制到安装盘目录下.例如安装路径为 c:\php5 ...