#!/usr/bin/env python from subprocess import PIPE,Popen def getDmi(): p = Popen(['dmidecode'],stdout=PIPE) data = p.stdout.read() return data def parseDmi(data): lines = [] line_in = False dmi_list = [i for i in data.split('\n') if i] for line in dmi…
#!/usr/bin/env python   from subprocess import Popen, PIPE   p = Popen(['dmidecode'], stdout=PIPE) data = p.stdout lines = [] dmi = {} a = True while a:     line = data.readline()     if line.startswith('System Information'):         while True:    …
收集主机信息: 主机名 ip 操作系统版本osver 服务器厂商vendor 服务器型号:product 服务器序列号:sn CPU型号:cpu_model CPU核数:cpu_num 内存大小:Memory #!/usr/bin/env python from subprocess import Popen,PIPE def getIfconfig(): p = Popen(['ifconfig'],stdout=PIPE) data = p.stdout.read() return data…
#!/usr/bin/env python from subprocess import PIPE,Popen import re def getIfconfig(): p = Popen(['ifconfig'],stdout=PIPE) data = p.stdout.read().split('\n\n') return [i for i in data if i and not i.startswith('lo')] def parseIfconfig(data): re_devname…
#!/usr/bin/env python import os from subprocess import PIPE,Popen def getPids(): p = Popen(['pidof','httpd'],stdout=PIPE,stderr=PIPE) pids = p.stdout.read().split() return pids def parsePidFile(pids): http_sum = 0 for i in pids: fn = os.path.join('/p…
在上一节python学习_数据处理编程实例(二)的基础上数据发生了变化,文件中除了学生的成绩外,新增了学生姓名和出生年月的信息,因此将要成变成:分别根据姓名输出每个学生的无重复的前三个最好成绩和出生年月 数据准备:分别建立四个文本文件 james2.txt     James Lee,2002-3-14,2-34,3:21,2.34,2.45,3.01,2:01,2:01,3:10,2-22 julie2.txt        Julie Jones,2002-8-17,2.59,2.11,2:…
Python进阶:函数式编程实例(附代码) 上篇文章"几个小例子告诉你, 一行Python代码能干哪些事 -- 知乎专栏"中用到了一些列表解析.生成器.map.filter.lambda.zip等表达形式,这就涉及到了Python中关于函数式编程(functional programming)的语法.函数等.这里我们就根据一些实例,聊聊Python中的函数式编程. 先附上维基百科中关于函数式编程的解释: 函数式编程,或称函数程序设计,又称泛函编程,是一种编程范型,它将电脑运算视为数学上…
有关Python中的并发编程实例,主要是对Threading模块的应用,文中自定义了一个Threading类库. 一.简介 我们将一个正在运行的程序称为进程.每个进程都有它自己的系统状态,包含内存状态.打开文件列表.追踪指令执行情况的程序指针以及一个保存局部变量的调用栈.通常情况下,一个进程依照一个单序列控制流顺序执行,这个控制流被称为该进程的主线程.在任何给定的时刻,一个程序只做一件事情. 一个程序可以通过Python库函数中的os或subprocess模块创建新进程(例如os.fork()或…
Python编程之列表操作实例详解[创建.使用.更新.删除] 这篇文章主要介绍了Python编程之列表操作,结合实例形式分析了Python列表的创建.使用.更新.删除等实现方法与相关操作技巧,需要的朋友可以参考下 #coding=utf8 ''''' 列表类型也是序列式的数据类型, 可以通过下标或者切片操作来访问某一个或者某一块连续的元素. 列表不仅可以包含Python的标准类型, 而且可以用用户定义的对象作为自己的元素. 列表可以包含不同类型的对象, 列表可以执行pop.empt.sort.r…
Python编程规范(PEP8) 代码布局 缩进 对于每一次缩进使用4个空格.使用括号.中括号.大括号进行垂直对齐,或者缩进对齐. 制表符还是空格? 永远不要将制表符与空格混合使用.Python最常用的缩进方式是只是用空格. 当调用Python命令行的 -t 选项时,它会检测并警告代码非法混合使用制表符和空格.当使用 -tt 选项时,警告变成了错误. 最大行长度 限制所有行最长为79个字符. 使用反斜杠来分行是一个很好的选择. 我们应当选择在二元操作符之后进行分行,而不是之前. 空行 使用两行空…