复制代码 代码如下:
#!/usr/bin/env Python

from __future__ import print_function
from collections import OrderedDict

def meminfo():
    \’\’\’ Return the information in /proc/meminfo
    as a dictionary \’\’\’
    meminfo=OrderedDict()

    with open(\’/proc/meminfo\’) as f:
        for line in f:
            meminfo[line.split(\’:\’)[0]] = line.split(\’:\’)[1].strip()
    return meminfo

if __name__==\’__main__\’:
    #print(meminfo())

    meminfo = meminfo()
    print(\’Total memory: {0}\’.format(meminfo[\’MemTotal\’]))
    print(\’Free memory: {0}\’.format(meminfo[\’MemFree\’]))

简单说明一下清单 3:清单 3 读取 proc/meminfo 中的信息,Python 字符串的 split 方法是用的频率还是比较多的。比如我们需要存储一个很长的数据,并且按照有结构的方法存储,方便以后取数据进行处理。当然可以用 json 的形式。但是也可以把数据存储到一个字段里面,然后有某种标示符来分割。 Python 中的 strip 用于去除字符串的首位字符,最后清单 3 打印出内存总数和空闲数。
可以使用 Python 命令运行脚本 mem.py 结果见图 3。