当前位置:  开发笔记 > 编程语言 > 正文

如何在Python中返回系统信息?

如何解决《如何在Python中返回系统信息?》经验,为你挑选了2个好方法。

使用Python,如何以通用方式返回CPU使用率,内存使用量(免费,使用等),进程数等信息,以便在Linux,Windows,BSD等上运行相同的代码?

或者,如何在所有上述系统中返回此信息,并且只有在该操作系统确实是操作环境时才运行该操作系统特定的代码?



1> John Fouhy..:

关于跨平台:您最好的选择可能是编写特定于平台的代码,然后有条件地导入它.例如

import sys
if sys.platform == 'win32':
  import win32_sysinfo as sysinfo
elif sys.platform == 'darwin':
  import mac_sysinfo as sysinfo
elif 'linux' in sys.platform:
  import linux_sysinfo as sysinfo
#etc

print 'Memory available:', sysinfo.memory_available()

对于特定资源,正如Anthony所指出的,您可以/proc在linux下访问.对于Windows,您可以在Microsoft Script Repository中查看.我不知道在哪里可以获得关于Mac的那种信息,但我可以想到一个很棒的网站,你可以问:-)


+1:每个OS*都不同.有些概念没有映射.它不能与操作系统无关.它必须是多态的,每个操作系统都有一个独特的实现.

2> Anthony D..:

在Linux环境中,您可以从/ proc文件系统中读取.

~$ cat /proc/meminfo
MemTotal:      2076816 kB
MemFree:        130284 kB
Buffers:        192664 kB
Cached:        1482760 kB
SwapCached:          0 kB
Active:         206584 kB
Inactive:      1528608 kB
HighTotal:     1179484 kB
HighFree:       120768 kB
LowTotal:       897332 kB
LowFree:          9516 kB
SwapTotal:     2650684 kB
SwapFree:      2650632 kB
Dirty:              64 kB
Writeback:          12 kB
AnonPages:       59668 kB
Mapped:          22008 kB
Slab:           200744 kB
PageTables:       1220 kB
NFS_Unstable:        0 kB
Bounce:              0 kB
CommitLimit:   3689092 kB
Committed_AS:   263892 kB
VmallocTotal:   114680 kB
VmallocUsed:      3604 kB
VmallocChunk:   110752 kB

推荐阅读
LEEstarmmmmm
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有