Python实现删除文件中含“指定内容”的行示例

yipeiwu_com7年前Python基础

本文实例讲述了Python实现删除文件中含指定内容的行。分享给大家供大家参考,具体如下:

#!/bin/env python
import shutil, sys, os
darray = [
  "Entering directory",
  "In function ",
  "Leaving directory",
  "__NR_SYSCALL_BASE",
  "arm-hisiv100-linux-ar ",
  "arm-hisiv100-linux-gcc ",
  "but argument is of type",
  "dereferencing type-punned pointer will break strict-aliasing rules",
  "differ in signedness",
  "does break strict-aliasing rules",
  "embedded '\\0' in format",
  "excess elements in array initializer",
  "implicit declaration of",
  "make -C ",
  " rm -f",
  "this is the location of the previous definition",
  "warning: multi-line comment"
]
def isInArray (array, line):
  for item in array:
    if item in line:
      return True
  return False
if __name__ == '__main__':
  argv = sys.argv
  argc = len(argv)
  if argc < 2:
    print "Usage: %s <file>" %(os.path.basename(argv[0]))
    exit()
  fname = argv[1]
  fresult = fname + ".result"
  with open(fname, 'r') as f:
    with open(fresult, 'w') as g:
      for line in f.readlines():
        if not isInArray(darray, line):
          g.write(line)

另外还可参考:bash删除文件中含"指定内容"的行

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python文件与目录操作技巧汇总》、《Python文本文件操作技巧汇总》、《Python URL操作技巧总结》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python实现简单登录验证

本文实例为大家分享了简单的Python登录验证,供大家参考,具体内容如下 编写登录接口 要求:1、输入用户名密码    2、认证成功后显示欢迎信息    3、输错三次后锁定 #cod...

使用NumPy读取MNIST数据的实现代码示例

使用NumPy读取MNIST数据的实现代码示例

NumPy 什么是NumPy NumPy是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。主页为https://numpy.o...

利用Python正则表达式过滤敏感词的方法

利用Python正则表达式过滤敏感词的方法

问题描述:很多网站会对用户发帖内容进行一定的检查,并自动把敏感词修改为特定的字符。 技术要点: 1)Python正则表达式模块re的sub()函数; 2)在正则表达式语法中,竖线“|”表...

Python Xml文件添加字节属性的方法

实例如下所示: from xml.etree.cElementTree import ElementTree,Element import xlrd import re def re...

解决Django 在ForeignKey中出现 non-nullable field错误的问题

在django的model中建立了如下的类 class UserType(models.Model): name = models.CharField(max_length=40,...