发布时间:2019-09-08 09:13:06编辑:auto阅读(1598)
#!/usr/bin/python
with open('/proc/meminfo') as fd:
for line in fd:
if line.startswith('MemTotal'):
total = line.split()[1]
continue
if line.startswith('MemFree'):
free = line.split()[1]
break
FreeMem = int(free)/1024.0
TotalMem = int(total)/1024.0
print "FreeMem:"+"%.2f" % FreeMem+'M'
print "TotalMem:"+"%.2f" % TotalMem+'M'
print "FreeMem/TotalMem:"+"%.2f" % ((FreeMem/TotalMem)*100)+'%'
执行结果如下:
说明:
1、with open('/proc/meminfo') as fd: 和 fd=open('/proc/meminfo') 执行的结果一样,都是遍历文件;前者只有在Python 2.6 及后版本才有,后者当打开的文件达到几个G的时候,很消耗内存,而前者没有这个问题。
2、字符串方法:
line.startswith:以什么开头,返回的是布尔值(true/false)
line.split:以空格或者Tab键为分隔,形成一个列表,通过列表索引取值(字符串)
3、“%.2f” 和 "%s" 一样都是格式化字符串输出,前者输出的是保留两位小数点
上一篇: Python 之模块导入
下一篇: Python装饰器(Decorate)使
47851
46412
37296
34743
29323
25981
24927
19959
19551
18040
5800°
6424°
5939°
5967°
7074°
5921°
5952°
6449°
6410°
7791°