Python中使用platform模块获取系统信息的用法教程
操作系统相关
- system():操作系统类型(见例)
- version():操作系统版本
- release():操作系统发布号,例如win7返回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')):尝试获取LinuxOS发布版本信息.返回(distname,version,id).dist是发布版本的意思.
- mac_ver(release='',versioninfo=(‘',‘',‘'),machine=''):mac版本
- java_ver(release='',vendor='',vminfo=(‘',‘',‘'),osinfo=(‘',‘',‘')):java版本
- libc_ver(executable=r'c:\Python27\python.exe',lib='',version='',chunksize=2048):libc版本,linux相关吧.
以上相应版本查询的返回元组和其形参对应.
platform.system() 'Linux'#python3.3.2+64bitsondebianjessie64bits 'Windows'#python3.3.232bitsonwindows8.164bits 'Windows'#python3.3.264bitsonwindows8.164bits 'Darwin'#python3.4.164bitsonmacosx10.9.4 'Java' platform.version() '#1SMPDebian3.10.11-1(2013-09-10)'#python3.3.2+64bitsondebianjessie64bits '6.2.9200'#python3.3.232bitsonwindows8.164bits '6.2.9200'#python3.3.264bitsonwindows8.164bits 'DarwinKernelVersion13.3.0:TueJun321:27:35PDT2014;root:xnu-2422.110.17~1/RELEASE_X86_64'#python3.4.164bitsonmacosx10.9.4 platform() 'Windows-7-6.1.7601-SP1' win32_ver() ('7','6.1.7601','SP1',u'MultiprocessorFree') platform.dist() ('debian','jessie/sid','')#python3.3.2+64bitsondebianjessie64bits
系统信息
- uname():返回元组,system,node,release,version,machine,processor.
- architecture(executable=r'c:\Python27\python.exe',bits='',linkage=''):系统架构
- machine():CPU平台,AMD,x86?(见例)
- node():节点名(机器名,如Hom-T400)
- processor():CPU信息
- system_alias(system,release,version):返回相应元组..没何屌用.
- platform.architecture()
('64bit','ELF')#python3.3.2+64bitsondebianjessie64bits ('32bit','WindowsPE')#python2.7.232bitsonwindows764bits ('64bit','WindowsPE')#python3.3.264bitsonwndows8.164bits ('64bit','')#python3.4.164bitsonmacosx10.9.4 platform.machine() 'x86_64'#python3.3.2+64bitsondebianjessie64bits 'AMD64'#python3.3.232bitsonwindows8.164bits 'AMD64'#python3.3.264bitsonwindows8.164bits 'x86_64'#python3.4.164bitsonmacosx10.9.4 platform.node() 'Hom-T400' platform.processor() 'Intel64Family6Model23Stepping10,GenuineIntel' platform.uname() ('Windows','Hom-T400','7','6.1.7601','AMD64','Intel64Family6Model23Stepping10,GenuineIntel') uname_result(system='Linux',node='work',release='3.10-3-amd64',version='#1SMPDebian3.10.11-1(2013-09-10)',machine='x86_64',processor='')#python3.3.2+64bitsondebianjessie64bits uname_result(system='Windows',node='work-xxx',release='8',version='6.2.9200',machine='AMD64',processor='Intel64Family6Model58Stepping9,GenuineIntel')#python3.3.232bitsonwindows8.164bits uname_result(system='Darwin',node='mba',release='13.3.0',version='DarwinKernelVersion13.3.0:TueJun321:27:35PDT2014;root:xnu-2422.110.17~1/RELEASE_X86_64',machine='x86_64',processor='i386')#python3.4.164bitsonmacosx10.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):portablepopen()接口,执行各种命令.
- python_verison()
'3.3.2+'#python3.3.2+64bitsondebianjessie64bits '3.3.3'#python3.3.232bitsonwindows8.164bits python_version_tuple() ('2','7','2') python_build() ('default','Jun12201115:08:59') python_compiler() 'MSCv.150032bit(Intel)' pl.python_implementation() 'CPython'
获取用户名:
>>>importgetpass >>>getpass.getuser() 'root'
获取环境变量:
>>>importos >>>importpwd >>>os.environ['LANG'] 'en_US.UTF-8' >>>printos.getenv('LANG') en_US.UTF-8 >>>printos.getenv('PWD') /root >>>printos.getenv('HOME') /root >>>printos.getenv('USER') root >>>printos.getenv('HOSTNAME') localhost.localdomain >>>printos.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,会返回所有环境变量为一个字典