视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
Python中使用platform模块获取系统信息的用法教程
2020-11-27 14:29:00 责编:小采
文档


操作系统相关

  • system() : 操作系统类型(见例)
  • version(): 操作系统版本
  • release(): 操作系统发布号, 例如win 7返回7, 还有如NT, 2.2.0之类.
  • platform(aliased=0, terse=0): 操作系统信息字符串,扥与system()+win32_ver()[:3]
  • win32_ver(release='', version='', csd='', ptype=''): win系统相关信息
  • linux_distribution(distname='', version='', id='', supported_dists=(‘SuSE', ‘debiaare', ‘yellowdog', ‘gentoo', ‘UnitedLinux', ‘turbolinux'), full_distribution_name=1): Linux系统相关信息
  • dist(distname='', version='', id='', supported_dists=(‘SuSE', ‘debian', ‘fedora', ‘redhat', ‘centos', ‘mandrake', ‘mandriva', ‘rocks', ‘slackware', ‘yellowdog', ‘gentoo', ‘UnitedLinux', ‘turbolinux')): 尝试获取Linux OS发布版本信息.返回(distname,version,id). dist是发布版本的意思.
  • mac_ver(release='', versioninfo=(‘', ‘', ‘'), machine=''): mac版本
  • java_ver(release='', vendor='', vminfo=(‘', ‘', ‘'), osinfo=(‘', ‘', ‘')): java版本
  • libc_ver(executable=r'c:Python27python.exe', lib='', version='', chunksize=2048): libc版本,linux相关吧.
  • 以上相应版本查询的返回元组和其形参对应.

    platform.system()
    'Linux' # python 3.3.2+  bits on debian jessie  bits
    'Windows' # python 3.3.2 32 bits on windows 8.1  bits
    'Windows' # python 3.3.2  bits on windows 8.1  bits
    'Darwin' # python 3.4.1  bits on mac os x 10.9.4
    'Java' 
    
    platform.version()
    '#1 SMP Debian 3.10.11-1 (2013-09-10)' # python 3.3.2+  bits on debian jessie  bits
    '6.2.9200' # python 3.3.2 32 bits on windows 8.1  bits
    '6.2.9200' # python 3.3.2  bits on windows 8.1  bits
    'Darwin Kernel Version 13.3.0: Tue Jun 3 21:27:35 PDT 2014; root:xnu-2422.110.17~1/RELEASE_X86_' # python 3.4.1  bits on mac os x 10.9.4
    
    platform()
    'Windows-7-6.1.7601-SP1'
    
    win32_ver()
    ('7', '6.1.7601', 'SP1', u'Multiprocessor Free')
    
    platform.dist()
    ('debian', 'jessie/sid', '') # python 3.3.2+  bits on debian jessie  bits
    
    

    系统信息

  • uname(): 返回元组,system, node, release, version, machine, processor.
  • architecture(executable=r'c:Python27python.exe', bits='', linkage=''): 系统架构
  • machine() : CPU平台,AMD,x86?(见例)
  • node() : 节点名(机器名,如Hom-T400)
  • processor() : CPU信息
  • system_alias(system, release, version): 返回相应元组..没何屌用.
  • platform.architecture()
  • ('bit', 'ELF') # python 3.3.2+  bits on debian jessie  bits
    ('32bit', 'WindowsPE') # python 2.7.2 32 bits on windows 7  bits
    ('bit', 'WindowsPE') # python 3.3.2  bits on wndows 8.1  bits
    ('bit', '') # python 3.4.1  bits on mac os x 10.9.4
    
    platform.machine()
    'x86_' # python 3.3.2+  bits on debian jessie  bits
    'AMD' # python 3.3.2 32 bits on windows 8.1  bits
    'AMD' # python 3.3.2  bits on windows 8.1  bits
    'x86_' # python 3.4.1  bits on mac os x 10.9.4
    
    platform.node()
    'Hom-T400' 
    
    platform.processor()
    'Intel Family 6 Model 23 Stepping 10, GenuineIntel'
    
    platform.uname()
    ('Windows', 'Hom-T400', '7', '6.1.7601', 'AMD', 'Intel Family 6 Model 23 Stepping 10, GenuineIntel')
    
    uname_result(system='Linux', node='work', release='3.10-3-amd', version='#1 SMP Debian 3.10.11-1 (2013-09-10)', machine='x86_', processor='') # python 3.3.2+  bits on debian jessie  bits
     
    uname_result(system='Windows', node='work-xxx', release='8', version='6.2.9200', machine='AMD', processor='Intel Family 6 Model 58 Stepping 9,GenuineIntel') # python 3.3.2 32 bits on windows 8.1  bits
     
    uname_result(system='Darwin', node='mba', release='13.3.0', version='Darwin Kernel Version 13.3.0: Tue Jun 3 21:27:35 PDT 2014; root:xnu-2422.110.17~1/RELEASE_X86_', machine='x86_', processor='i386') # python 3.4.1  bits on mac os x 10.9.4
    
    

    Python相关

  • python_version(): py版本号
  • python_branch(): python分支(子版本信息),一般为空.
  • python_build(): python编译号(default)和日期.
  • python_compiler(): py编译器信息
  • python_implementation(): python安装履行方式,如CPython, Jython, Pypy, IronPython(.net)等.
  • python_revision(): python类型修改版信息,一般为空.
  • python_version_tuple():python版本号分割后的tuple.
  • popen(cmd, mode='r', bufsize=None): portable popen() 接口,执行各种命令.
  • python_verison()
  • '3.3.2+' # python 3.3.2+  bits on debian jessie  bits
    '3.3.3' # python 3.3.2 32 bits on windows 8.1  bits
    python_version_tuple()
    ('2', '7', '2')
    python_build()
    ('default', 'Jun 12 2011 15:08:59')
    python_compiler()
    'MSC v.1500 32 bit (Intel)'
    pl.python_implementation()
    'CPython'
    

    获取用户名:

    >>> import getpass 
    >>> getpass.getuser() 
    'root'
    

    获取环境变量:

    >>> import os
    >>> import pwd
    >>> os.environ['LANG']
    'en_US.UTF-8'
    >>> print os.getenv('LANG')
    en_US.UTF-8
    >>> print os.getenv('PWD')
    /root
    >>> print os.getenv('HOME')
    /root
    >>> print os.getenv('USER')
    root
    >>> print os.getenv('HOSTNAME')
    localhost.localdomain
    >>> print os.getenv('SHELL')
    /bin/bash
    >>> pwd.getpwuid(os.getuid())
    pwd.struct_passwd(pw_name='root', pw_passwd='x', pw_uid=0, pw_gid=0, pw_gecos='root', pw_dir='/root', pw_shell='/bin/bash')
    >>> pwd.getpwuid(os.getuid())[0] #获得用户名
    'root'
    >>> pwd.getpwuid(os.getuid())[5] #获得家目录
    '/root'
    >>> pwd.getpwuid(os.getuid())[6] #获得shell
    '/bin/bash'
    

    还有个os.environ.get,会返回所有环境变量为一个字典

    下载本文
    显示全文
    专题