Python判断一个文件中的字符串是否存在于另外一个文件中

最近市场部的同事让我帮忙处理一个两个文件,判断A文件的内容是否在B文件中存在,如果存在则打印出B文件中的内容,想了下,就目前用shell很简单实现,用Python如何实现呢?下面是具体代码:

shell代码:

#!/bin/bash
for line in `cat /root/zy/audiolist.txt`
do
      files=`cat /root/zy/list.txt|grep "$line"|wc -l`
      if [ -n $files ]
      then
         echo `cat /root/zy/list.txt|grep "$line"` >> shell-script.txt
      else
         echo "file is not exist"
      fi
done

shell脚本输出结果直接输入到文件shell-script.txt中

Python代码:

#!/usr/bin/env python
fobj=open(‘/root/zy/python-secipt.txt‘,‘rw+‘)
with open(‘/root/zy/audiolist.txt‘,‘r‘) as f:
     for line in f:
          with open(‘/root/zy/list.txt‘,‘r‘) as obj:
                  for strs in obj.readlines():
                         if line.strip() in strs.strip():
                              fobj.write(strs.strip()+"\n")
fobj.close()

Python脚本直接将文件输出到python-secipt.txt

时间: 2024-10-10 12:30:30

Python判断一个文件中的字符串是否存在于另外一个文件中的相关文章

C中常量字符串使用以及g++的一个bug

const char*用于定义一个指向常量字符串的指针,通常形式为: const char* ptr = "hello"; 但可能很多粗心的朋友们没有注意到下面一种定义: const char* ptr2 = "hello"; ptr和ptr2指向的是同一片内存,即定义const char* ptr = "hello"并不等于创建新的常量字符串,而是试图返回一个常量字符串的访问地址,如果常量字符串不存在就创建常量字符串并返回常量字符串的地址,这种

Python学习第三天之字符串编码解码,集合,文件,函数

1数据类型--集合 初始化 list = [ 1, 2,3,4,5 ] set1 = set ( list ) 集合的逻辑关系 求交集: set3 = set1.intersection(set2)  或者  set3 = set1 & set2 求并集:set1.union(set2)  或者 set1 | set2 求差集:set6 = set1.difference(set2)  或者  set6 = set1 - set2 set5 = set2.difference(set1) 或者

Python判断数字回文(转字符串实现,不转字符串实现)

Python实现数字回文的判断,回文返回True,非回文返回False, 只有一位数的也返回True. 其中思路一,将数字转换成字符串,然后跟逆序对比,但需要额外的空间开销来创建字符串.具体实现: def isPalindrome(x): """ :type x: int :rtype: bool """ str_x = str(x) if len(str_x) == 0: print("Input {0} is invalid.&qu

java读取txt文件,对字符串进行操作后导出txt文件

嘿嘿,代码略为简单,不再多做解释,直接上码! package org.lq.com.util; import java.io.File; import java.io.InputStreamReader; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileInputStream; import java.io.FileWriter; public class Auto_txt { pu

【转】BAT批处理中的字符串处理详解(字符串截取)

下面对这些功能一一进行讲解. 1.截取字符串 截取字符串可以说是字符串处理功能中最常用的一个子功能了,能够实现截取字符串中的特定位置的一个或多个字符.举例说明其基本功能: @echo off set ifo=abcdefghijklmnopqrstuvwxyz0123456789 echo 原字符串(第二行为各字符的序号): echo %ifo% echo 123456789012345678901234567890123456 echo 截取前5个字符: echo %ifo:~0,5% ech

描述了say_hello函数的具体内容,调用zend_printf系统函数在php中打印字符串

下载一个php的源代码包,这里使用的是php 4.0.5版,解压后会看到php的根目录下会有README.EXT_SKEL这样一个文件,打开详细阅读了一下,发现了一个非常好用的工具,这个工具可以帮你构建一个空的php扩展,然后你向里面添加相应的代码就可以完成你自己的功能扩展了.下面我们就来介绍如何使用这个工具. 首先转移你的目录到php的目录下的ext目录,如果你只需要一个基本的扩展框架的话,执行下面的命令: ./ext_skel --extname=module_name module_nam

【Python】Python判断统计每个月天数源码示例

如何利用Python判断统计每个月天数源.在日常的学习或是工作中会经常遇到需要统计日期数据的情况.特别是统计涉及到自然周或是自然月的计算. 用Python编程语言来统计这些是需要考虑很多条件的.例如:自动运行的时候我们需要判断每个月的天数,而且对于自然月的加减,还要考虑跨年的自然月与是否闰年.这是一个用python写的小程序,可以计算自然周与自然月.是通过时间戳计算,返回时间戳:如果计算天则返回当天凌晨的时间戳:如果计算周则返回当周周一的凌晨时间戳:自然月则返回当月1日凌晨时间戳. 代码不是很好

C语言中的字符串数组 指针

1.字符串 用“”引起来的内容,就是字符串. 在C语言中有没有专门的字符串的变量?  没有 所以我们使用字符数组来存储字符串.(把字符串的每一个字符存储到字符数组的每一个元素中,并且会多存放一个‘\0’) '\0' 字符串的结束标记,ascII码表中值是 0 对应的字符.NUT,NULL 2.字符数组 1)定义 char 数祖名[长度]; char str[200]; 表示定义一个长度为200的字符数组,如果用来存储字符串,则字符串的最大长度是199,留出一个给'\0' char str[3]=

properties文件转为json字符串

1. [代码]java     跳至 [1] [全屏预览] ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 import java.io.IOException; import java.io.InputStream; import java.util.Prop