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中的yield函数的用法

您可能听说过,带有 yield 的函数在 Python 中被称之为 generator(生成器),何谓 generator ? 我们先抛开 generator,以一个常见的编程题目来展示...

Python全局锁中如何合理运用多线程(多进程)

Python全局锁中如何合理运用多线程(多进程)

Python全局锁 (1)全局锁导致的问题 全局锁的英文简称是GIL,全称是Global Interpreter Lock(全局解释器锁),来源是python设计之初的考虑,为了数据安全...

基于Pycharm加载多个项目过程图解

基于Pycharm加载多个项目过程图解

这篇文章主要介绍了基于Pycharm加载多个项目过程图解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 今天在使用Pycharm工具练...

Python Dataframe 指定多列去重、求差集的方法

1)去重 指定多列去重,这是在dataframe没有独一无二的字段作为PK(主键)时,需要指定多个字段一起作为该行的PK,在这种情况下对整体数据进行去重。 Attention:主要用到了...

在Python中用split()方法分割字符串的使用介绍

split()方法返回的字符串中的所有单词的列表,使用str作为分隔符(如果在未指定的所有空格分割),可选择限当前分割为数量num。 语法 以下是split()方法的语法: str....