最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python 文件查找及內(nèi)容匹配方法

 更新時間:2018年10月25日 11:24:33   作者:琥珀光潔-衍鈞  
今天小編就為大家分享一篇python 文件查找及內(nèi)容匹配方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

需求:程序開發(fā)中有大量的接口,但在實際的使用中有一部分是沒有使用的,在開發(fā)的程序中匹配這些接口名,找到哪些接口從沒有使用過。將這些沒有使用過的接口名保存下來。

代碼結(jié)構(gòu):

結(jié)構(gòu)解析:

1、find.py 是文件查找及匹配程序

2、input_files.txt是待匹配內(nèi)容

文件格式如下:

3、result.txt 用于存放查找結(jié)果

格式同上

4、text.txt 用于測試的文檔(可忽略)

實際代碼:

find.py

#!/usr/bin/python
# -*- coding: UTF-8 -*-
import os, re, datetime


class Find(object):
 def __init__(self, root, input_file):
  """
    --初始化
  """
  self.root = root # 文件樹的根
  self.input_files = [] # 待查詢的字符串集合
  self.files = [] # 待匹配的文件集合
  self.current = 0 # 正在匹配的文件集合的位置

  f = file(input_file, "r")
  old_content = f.read()
  f.close()
  self.input_files = old_content.split('\n') # 將待匹配字符串保存在數(shù)組中

 @staticmethod
 def find_file(self):
  """
  --查找文件,即遍歷文件樹將查找到的文件放在文件集合中
  :return:
  """
  # python中的walk方法可以查找到所給路徑下的所有文件和文件夾,這里只用文件
  for root, dirs, files in os.walk(self.root, topdown=True):
   for name in files:
    self.files.append(os.path.join(root, name))
    #  print(os.path.join(root, name))
    # for name in dirs:
    #  print(os.path.join(root, name))

 @staticmethod
 def walk(self):
  """
  --逐一查找,并將結(jié)果存入result.txt文件中
  :param self:
  :return:
  """
  for item1 in self.files:
   Find.traverse_file(self, item1)
  try:
   result = ''
   for item3 in self.input_files:
    result += item3 + '\n'
   f = file("./result_files.txt", "w")
   f.write(result)
   f.close()
  except IOError, msg:
   print "Error:", msg
  else:
   print "OK"

 @staticmethod
 def traverse_file(self, file_path):
  """
  --遍歷文件,匹配字符串
  :return:
  """
  f = file(file_path, "r")
  file_content = f.read()
  f.close()
  input_files = []
  for item2 in self.input_files:
   if item2:
    # 正則匹配,不區(qū)分大小寫
    searchObj = re.search(r'(.*)' + item2 + '.*', file_content, re.M | re.I)
    if searchObj:
     continue
    else:
     input_files.append(item2)
  self.input_files = input_files


if __name__ == "__main__":

 print datetime.datetime.now()
 findObj = Find('F:\\projects', "./input_files.txt")
 findObj.find_file(findObj)
 findObj.walk(findObj)
 print datetime.datetime.now()

以上這篇python 文件查找及內(nèi)容匹配方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python常用字符串替換函數(shù)strip、replace及sub用法示例

    Python常用字符串替換函數(shù)strip、replace及sub用法示例

    這篇文章主要介紹了Python常用字符串替換函數(shù)strip、replace及sub用法,結(jié)合實例形式分析了Python針對字符串替換的常用函數(shù)strip、replace及sub功能及簡單使用技巧,需要的朋友可以參考下
    2018-05-05
  • Pytorch中.detach()與.data的用法小結(jié)

    Pytorch中.detach()與.data的用法小結(jié)

    這篇文章主要介紹了Pytorch中.detach()與.data的用法,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-07-07
  • 注意import和from import 的區(qū)別及說明

    注意import和from import 的區(qū)別及說明

    這篇文章主要介紹了注意import和from import 的區(qū)別及說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • Python?常用的print輸出函數(shù)和input輸入函數(shù)

    Python?常用的print輸出函數(shù)和input輸入函數(shù)

    這篇文章主要介紹了Python?常用的print輸出函數(shù)和input輸入函數(shù),今天主要學(xué)習(xí)一下Python中的輸入輸出流,會對標(biāo)準(zhǔn)輸入輸出流、文件輸入輸出流展開介紹,需要的朋友可以參考一下
    2022-02-02
  • python實現(xiàn)批量解析郵件并下載附件

    python實現(xiàn)批量解析郵件并下載附件

    這篇文章主要為大家詳細(xì)介紹了python實現(xiàn)批量解析郵件并下載附件,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • 淺析Python中signal包的使用

    淺析Python中signal包的使用

    這篇文章主要介紹了Python中signal包的使用,主要在Linux系統(tǒng)下對進(jìn)程信號進(jìn)行相關(guān)操作,需要的朋友可以參考下
    2015-11-11
  • 解決python3.6用cx_Oracle庫連接Oracle的問題

    解決python3.6用cx_Oracle庫連接Oracle的問題

    這篇文章主要介紹了解決python3.6用cx_Oracle庫連接Oracle的問題,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-12-12
  • 詳解python 利用echarts畫地圖(熱力圖)(世界地圖,省市地圖,區(qū)縣地圖)

    詳解python 利用echarts畫地圖(熱力圖)(世界地圖,省市地圖,區(qū)縣地圖)

    這篇文章主要介紹了詳解python 利用echarts畫地圖(熱力圖)(世界地圖,省市地圖,區(qū)縣地圖),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • Python實現(xiàn)目錄自動清洗

    Python實現(xiàn)目錄自動清洗

    這篇文章主要為大家詳細(xì)介紹了Python實現(xiàn)目錄自動清洗的相關(guān)知識,文中的示例代碼講解詳細(xì),具有一定的借鑒價值,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-11-11
  • python 數(shù)據(jù)加密代碼

    python 數(shù)據(jù)加密代碼

    使用Python來做數(shù)據(jù)加密同樣簡單,可以使用hashlib或者h(yuǎn)mac模塊來做數(shù)據(jù)加密
    2008-12-12

最新評論

张家港市| 田林县| 同江市| 济宁市| 潢川县| 邵武市| 扎囊县| 元氏县| 离岛区| 吉安县| 自治县| 宁城县| 永安市| 无棣县| 德兴市| 怀仁县| 新营市| 石狮市| 洪江市| 荃湾区| 崇义县| 闻喜县| 内乡县| 利辛县| 桑日县| 城固县| 当雄县| 辽源市| 曲水县| 西畴县| 灵丘县| 淮安市| 扶绥县| 松潘县| 新绛县| 辽阳县| 马边| 会东县| 郁南县| 镇康县| 邹城市|