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 ...
随机推荐
- 【BZOJ4591】【Shoi2015】超能粒子炮
Description 传送门 Solution 记\(a=\lfloor\frac n p\rfloor\),\(b=n\%p\).我们尝试使用Lucas定理展开这些组合数,寻找公共部分.以下除 ...
- kindeditor<=4.1.5上传漏洞复现
0x00 漏洞描述 漏洞存在于kindeditor编辑器里,你能上传.txt和.html文件,支持php/asp/jsp/asp.net,漏洞存在于小于等于kindeditor4.1.5编辑器中 这里 ...
- Bypass AV meterpreter免杀技巧
0x01 meterpreter简介 MetasploitFramework是一个缓冲区溢出测试使用的辅助工具,也可以说是一个漏洞利用和测试平台,它集成了各种平台上常见的溢出漏洞和流行的shellco ...
- (转)maven镜像详解
背景:一直以来,对maven镜像不是特别的了解,这里通过对网上资料的收集,做个详细的记录. 镜像介绍 如果仓库X可以提供仓库Y存储的所有内容,那么就可以认为X是Y的一个镜像.换句话说,任何一个可以从仓 ...
- JS--条件语句
一.If条件判断 1.1 if条件 if(条件){ //js代码 } 1.2 if...else if(条件){ //js代码 }else { //js代码 } 1.3 if..else if..el ...
- 我的Pycharm,我做主
之间花了一周多的时间把Pycharm官方帮助文档翻译了一遍,一共43篇博客,累得要屎,感悟颇多. 发牢骚之前先总结点干货,这里把所有的翻译文档列成如下目录,方便大家索引: 最全Pycharm教程(1) ...
- servlet拦截器
servlet拦截未登录的用户请求 java代码: package com.gavin.filter; import java.io.IOException; import javax.servlet ...
- bzoj千题计划141:bzoj3532: [Sdoi2014]Lis
http://www.lydsy.com/JudgeOnline/problem.php?id=3532 如果没有字典序的限制,那么DP拆点最小割即可 加上字典序的限制: 按c从小到大枚举最小割边集中 ...
- Git之原有基础开发新功能
场景描述 当一个项目已经上线,同时又在原有基础上新增功能模块,于是乎就要在原有代码的基础上进行开发,在新增模块功能的开发的过程中,项目发现了一个紧急Bug,需要修复.操作流程如下:
- pandas 实现rfm模型
import pandas as pd import numpy as np df = pd.read_csv('./zue_164466.csv') df['ptdate'] = pd.to_dat ...