python 判断txt每行内容中是否包含子串并重新写入保存的实例

假设需要批量处理多个txt文件,然后将包含子串的内容写入一个txt文件中,这里假设我的子串为"_9"和“_10”

下面就是我想要得到的其中两行内容(实际上还有很多行哈哈):

直接上代码:

#! /usr/bin/python
# -*- coding:UTF-8 -*-

import os
import os.path
import string

txt文件所在的路径和需要保存的目标路径(根据自己的实际目录进行更改即可):

Crop-Ocr_txt文件夹内放置了我需要批量处理的所有txt,我在同级目录下新建一个文件夹名为1000_simple_Ocrtxts,这里目标路径随意就好,能方便找到就行

txt_path = 'D:/youxinProjections/trafic-youxin/MobileNet_v1/obtain_qq_json_new/Crop_Ocr_txt/'
des_txt_path = 'D:/youxinProjections/trafic-youxin/MobileNet_v1/obtain_qq_json_new/1000_simple_OCRtxts/'

txt_files = os.listdir(txt_path) #txt_files能得到该目录下的所有txt文件的文件名

定义一个函数专门用来取包含子串的内容并写入到新的txt文件中,在后边的主函数中直接调用这个函数就行就行:

def select_simples():
  for txtfile in txt_files:
    if not os.path.isdir(txtfile):
      in_file = open(txt_path + txtfile, 'r')
      out_file = open(des_txt_path + txtfile, 'a') # 此处自动新建一个文件夹和txtfile的文件名相同,'a'为自动换行写入
      lines = in_file.readlines()
      for line in lines:
        str_name = line.split(" ")[0] # 这里获取的是txt文件中每行内容以空格隔开的第一个元素,也就是我自己txt文件中的*.jpg那一块内容
str1 = '_9' # 这就是我要判断的子串
        str2 = '_10' # 这也是子串

        #if (string.find(str_name, str1)!=-1) or (string.find(str_name, str2)):
        if (str1 in str_name) or (str2 in str_name): # in 可以判断在str_name中是否包含有两个子串,
          out_file.write(line) # 若包含子串,则将该行内容全部重新写入新的txt文件
          print(str_name)
      out_file.close()

主函数到了!:

if __name__ == '__main__':
select_simples()

晒一下最后的结果:

完美有没有!!!

补充知识:python判断文件中有否重复行,逐行读文件检测另一文件中是否存在所读内容

我就废话不多说了,还是直接看代码吧!

#!/bin/env python
# coding:utf-8
#程序功能是为了完成判断文件中是否有重复句子
#并将重复句子打印出来

res_list = []
f = open('./downloadmd5.txt','r')
res_dup = []
index = 0
file_dul = open('./r_d.txt', 'w')
file_last = open('./r_nd.txt','w')
for line in f.readlines():
  index = index + 1
  if line in res_list:
    temp_str = ""
    #temp_str = temp_str + str(index) + ','  #要变为str才行
    temp_line = ''.join(line)
    temp_str = temp_str+temp_line
    #最终要变为str类型
    file_dul.write(temp_str);         #将重复的存入到文件中
  else:
    res_list.append(line)
    file_last.write(line)
#!/bin/env python
# coding:utf-8
import re

res_list = []
f = open('./md5.txt','r')
f2 = open('./virus.conf','r')

index = 0
#没重复的文件名
file_dul = open('./m_nd.txt', 'w')
#重复的文件名
file_ex = open('./m_d.txt', 'w')

virstr = f2.read();
for line in f.readlines():
  line=line.strip('\n')
  if(re.search(line, virstr)):
    line = line + '\n'
    file_ex.write(line);
    #调用删除rm -rf filename
  else:
    line = line+'\n'
    file_dul.write(line);

以上这篇python 判断txt每行内容中是否包含子串并重新写入保存的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Python实现确认字符串是否包含指定字符串的实例

    有时候我们需要在某段字符串或者某段语句中去查找确认是否包含我们所需要的字符串信息, 举例子说. 某段变量是:A= "My name is Clay, and you can get my name" A = "My name is Clay, and you can get my name" myName = "Clay" if myName in A: //do what you want to do 而 我们需要查找A中是否包含Clay字段.

  • Python实现判断一个字符串是否包含子串的方法总结

    本文实例总结了Python实现判断一个字符串是否包含子串的方法.分享给大家供大家参考,具体如下: 1.使用成员操作符 in >>> s='nihao,shijie' >>> t='nihao' >>> result = t in s >>> print result True 2.使用string模块的find()/rfind()方法 >>> import string >>> s='nihao,s

  • python 判断txt每行内容中是否包含子串并重新写入保存的实例

    假设需要批量处理多个txt文件,然后将包含子串的内容写入一个txt文件中,这里假设我的子串为"_9"和"_10" 下面就是我想要得到的其中两行内容(实际上还有很多行哈哈): 直接上代码: #! /usr/bin/python # -*- coding:UTF-8 -*- import os import os.path import string txt文件所在的路径和需要保存的目标路径(根据自己的实际目录进行更改即可): Crop-Ocr_txt文件夹内放置了我需

  • 使用python读取txt文件的内容,并删除重复的行数方法

    注意,本文代码是使用在txt文档上,同时txt文档中的内容每一行代表的是图片的名字. #coding:utf-8 import shutil readDir = "原文件绝对路经" writeDir = "写入文件的绝对路径" #txtDir = "/home/fuxueping/Desktop/1" lines_seen = set() outfile=open(writeDir,"w") f = open(readDir,

  • python读取TXT每行,并存到LIST中的方法

    文本如图: Python: import sys result=[] with open('accounts.txt','r') as f: for line in f: result.append(list(line.strip('\n').split(','))) print(result) 结果: 以上这篇python读取TXT每行,并存到LIST中的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • python读取文件指定行内容实例讲解

    python读取文件指定行内容 import linecache text=linecache.getline(r'C:\Users\Administrator\Desktop\SourceCodeofMongoRedis\chapter_5\generate_string.py',10) 第十行内容为# info = '''1000001 王小小''' 实例扩展: 本文实例讲述了Python3实现从文件中读取指定行的方法.分享给大家供大家参考.具体实现方法如下: ''' 遇到问题没人解答?小编

  • 判断以逗号分隔的字符串中是否包含某个数的实例

    1.首先将字符串变成字符串数组 2.将字符串数组转为List集合 3.利用List集合中的contains()方法,判断是否包含某个数 @Test public void test2222(){ String ids = "1,2,3,45,35"; String[] values = ids.split(","); List<String> list = Arrays.asList(values); if(list.contains("4&q

  • Sql Server 2005中查询用分隔符分割的内容中是否包含其中一个内容

    今天做项目遇到一个问题, 有产品分类A,B,C顶级分类, 期中A下面有a1,a2,a3子分类. 但是a1可能共同属于A和B,然后我的数据库是这样设计的       id           name         parnet   1 A 0 2 B 0 3 a1 1,2 如果想要查询A的所有子类的话就要查询parent中包含1的,所以就萌生了这个办法.呵呵, 暂时没什么好办法,欢迎拍砖~~ 另外,这个东西我想弄成bool返回值的,哪位兄弟会的希望帮忙解决一下.... 复制代码 代码如下: S

  • 如何利用python执行txt文件中的代码

    目录 前言: 1.什么是exec()函数? 2.如何将txt中的代码作为字符串读取? 3.使用exec()执行txt文件的完整例子 前言: 我们知道,python代码文件大多数都是py类型. 那么,能不能使用txt文件存储我们的代码呢? python这么强大的语言当然可以做大,只需使用内置的exex()函数. 1.什么是exec()函数? 根据官方文档的介绍,exec函数的定义如下: exec(source, globals=None, locals=None, /)     Execute t

  • Python判断和循环语句的分析与应用

    目录 一.条件判断语句 1.单纯的if语句 2.if else语句 3.if elif else语句 二.循环语句 while循环语句 while语句 while else语句 for循环语句 三.break 和 continue break continue 九九乘法表 总结 一.条件判断语句 条件判断语句主要就三个关键字:if .elif.else 这三个关键字可以有多种不同的组合. 1.单纯的if语句 只有一个 if 关键字的时候,需要满足 if 后面的条件才会执行语句块. if True

  • Python判断回文数的三种方法实例

    需求: 从控制台输入一个五位数,如果是回文数就打印"是回文数",否则打印"不是回文数",例如:11111 12321 12221 "回文"是指正读反读都能读通的句子,它是古今中外都有的一种修辞方式和文字游戏,如"我为人人,人人为我"等.在数学中也有这样一类数字有这样的特征,成为回文数(palindrome number). 设n是一任意自然数.若将n的各位数字反向排列所得自然数n1与n相等,则称n为一回文数.例如,若n=123

  • 如何利用Python打开txt格式的文件

    目录 一.Pythont如何打开 txt 格式的文件? 二.什么是相对路径,什么是绝对路径? 三.如何进行逐行提取数据? 四.创建一个包含文件各行内容的列表 总结 一.Pythont如何打开 txt 格式的文件? 1.首先我使用pycharm创建一个项目,然后在这个项目里面再创建一个python的包,然后在里面创建一个demo1.txt的文件吗,里面写一些我看过的小说,然后使用python对这个txt文件进行内容的读取. txt的内容如下: 这一个txt文件的创建是和.py文件创建在同样的一个包

随机推荐