get os type with python

#!/usr/bin/env python     

import platform     

"""
Fingerprints the following Operating Systems:     

* Mac OS X
* Ubuntu
* Red Hat/Cent Os
* FreeBSD
* SunOS     

"""
class OpSysType(object):
    """Determins OS Type using platform module"""
    def __getattr__(self,attr):
        if attr == "osx":
            return "osx"
        elif attr == "rhel":
            return "redhat"
        elif attr == "centos":
            return "centos"
        elif attr == "ubu":
            return "ubuntu"
        elif attr == "fbsd":
            return "FreeBSD"
        elif attr == "sun":
            return "SunOS"
        elif attr == "unknow_linux":
            return "unknow_linux"
        elif attr == "unknow":
            return "unknow"
        else:
            raise AttributeError,attr     

    def linuxType(self):
        """Uses various methods to determine Linux Type """ 

        if platform.dist()[0] == self.rhel:
            return self.rhel
        elif platform.dist()[0] == self.centos:
            return self.centos
        elif platform.uname()[1] == self.ubu:
            return self.ubu
        else:
            return self.unknow_linux     

    def queryOS(self):
        if platform.system() == "Darwin":
            return self.osx
        elif platform.system() == "Linux":
            return self.linuxType()
        elif platform.system() == self.sun:
            return self.sun
        elif platform.system() == self.fbsd:
            return self.fbsd     

def fingerprint():
    type = OpSysType()
    print type.queryOS()     

if __name__ == "__main__":
    fingerprint()

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索centos
, return
, osx
, system
, platform
, attr
Self
python get type、python gettype、os type、bundle os type code、unknown os type hvm,以便于您获取更多的相关知识。

时间: 2024-10-31 23:02:47

get os type with python的相关文章

在Mac OS上搭建Python的开发环境

  一. 安装python mac系统其实自带了一个python的执行执行环境,用来运行python还行,但是开发可能就不够了,因此我们需要重新安装python.这里有两种方案安装: 1.homebrew ? 1 brew install python 这个方案比较简单,如果出错的话可以给前面加sudo试试,这个安装的python可能不是最新版. 2.从官网下载安装 大家可以从https://www.python.org/download下载安装最新版的python,安装比较无脑,一路按下去就O

《Python入门经典》——1.3 在Mac OS上安装Python

1.3 在Mac OS上安装Python 在本节,将介绍在Mac OS上安装Python的方法,并安装一个文本编辑器. 1.3.1 安装Python 如果你使用的是Mac OS计算机,那你已经安装了Python了!不需要再下载任何额外的东西.但是较早的Mac OS版本上的Python类型可能有一些细微差异,但这些差异不会影响本书中所有的操作. 1.3.2 运行Python 无论什么时候要运行Python Shell,都需要启动IDLE.有时需要你运行一个文件. 在这种情况下,启动IDLE并打开文

python下os模块强大的重命名方法renames

在python中有很多强大的模块,其中我们经常要使用的就是OS模块,OS模块提供了超过200个方法来供我们使用,并且这些方法都是和数据处理相关的,这里介绍下重命名这个方法. OS的重命名方法是os.rename,我用的ipython,这个玩意很是强大,只要按下TAB键,可以帮助我们自动对齐和列出可以使用的方法,发现有2个方法,分别是rename和renames,2个方法,前面的rename使用过无数次,但是后面的renames还没有使用过,今天有空,想看看到底有和用处---顾名思义,我觉得可能是

python的OS模块功能简介

学习python一直是断断续续的,今天我们来介绍的是python的一个非常强大的模块---OS,我们来事例的时候不是用的标准的python,而是用的python的同胞兄弟Ipython,ipython 是一个 python 的交互式 shell,比默认的 python shell 好用得多,支持变量自动补全,自动缩近,支持 bash shell 命令,内置了许多很有用的功能和函数. Ipython是需要单独安装的,安装起来非常简单,如下: wget http://ipython.scipy.or

Python os.path.help

Help on module posixpath in os:NAME posixpath - Common operations on Posix pathnames.FILE /usr/lib/python2.6/posixpath.pyMODULE DOCS http://docs.python.org/library/posixpathDESCRIPTION Instead of importing this module directly, import os and refer to

Appium探索—Mac OS Python版

Appium官网所描述的特性,都很吸引人,刚好最近在研究Mobile Automation Testing,所以很有兴趣探索下Appium这个年轻的工具. 不过看了官网的documents,实在是让初入门的我感觉摸不着头脑. 所以,我只能search网上有限的资源,先从运行Appium提供的支持Python,Javascript,Java,Ruby等语言的examples开始慢慢体会Appium的工作原理. 在此,记录这个探索的过程. 首先尝试成功的是,在Mac OS上的Python examp

代码-python使用os.walk进行遍历出现编码错误

问题描述 python使用os.walk进行遍历出现编码错误 本意是想用sklearn进行tf-idf统计的,需要对路径下的文件夹和文件进行遍历,现在有代码部分为 path = 'D:Python27' for subdir, dirs, files in os.walk(path): for file in files: file_path = subdir + os.path.sep + file 在没有修改编码方式程序运行出错,UnicodeDecodeError: 'utf8' code

Python中的os.path路径模块中的操作方法总结_python

解析路径路径解析依赖与os中定义的一些变量: os.sep-路径各部分之间的分隔符. os.extsep-文件名与文件扩展名之间的分隔符. os.pardir-路径中表示目录树上一级的部分. os.curdir-路径中当前目录的部分. split()函数将路径分解为两个单独的部分,并返回包含这些结果的tuple.第二个元素是路径的最后部分,地一个元素是其他部分. import os.path for path in [ '/one/two/three', '/one/two/three/', '

教你用Type Hint提高Python程序开发效率_python

简介 Type Hint(或者叫做PEP-484)提供了一种针对Python程序的类型标注标准. 为什么使用Type Hint?对于动态语言而言,常常出现的情况是当你写了一段代码后,隔段时间你可能忘记这个方法的原型是什么样子的了,你也不清楚具体应该传入什么类型的参数,这样往往需要你去阅读代码才能定义每个类型具体是什么.或者当你使用一个文档并不是特别完全的第三方库,你不知道这个库应该如何使用,这都会很痛苦. 现在,借助Type Hint,你可以实现:      1.实现类型检查,防止运行时出现的类