python实现递归查找某个路径下所有文件中的中文字符


Posted in Python onAugust 31, 2019

本文实例为大家分享了python实现递归查找某个路径下所有文件中的中文字符,供大家参考,具体内容如下

# -*- coding: utf-8 -*-
# @ description:
# @ author: 
# @ created: 2018/7/21
 
import re
import sys
import os
 
reload(sys)
sys.setdefaultencoding("utf8")
 
 
def translate(str):
  out = set()
  line = str.strip().decode('utf-8', 'ignore') # 处理前进行相关的处理,包括转换成Unicode等
  p2 = re.compile(ur'[^\u4e00-\u9fa5]') # 中文的编码范围是:\u4e00到\u9fa5
  zh = " ".join(p2.split(line)).strip()
  # zh = "\n".join(zh.split()) #dsds经过相关处理后得到中文的文本
  for s in zh.split():
    out.add(s) # 经过相关处理后得到中文的文本
  return out
 
def extract_file(path):
  result = set()
  try:
    f = open(path) # 打开文件
    lines = f.readlines()
    for line in lines:
      string = translate(line)
      if string:
        result.update(string)
  except Exception as e:
    pass
  return result
 
 
def extract(path):
  result = set()
  files = os.listdir(path)
  for file in files:
    if not file.startswith("."):
      if not os.path.isdir(path + "/" + file): # 判断是否是文件夹,不是文件夹才打开ssgsg判断是否是文件夹,不是文件夹才打开
        sub_file = extract_file(path + "/" + file)
        if sub_file:
          result.update(sub_file)
      else:
        print file
        child = extract(path + "/" + file)
        if child:
          result.update(child)
  return result
 
 
if __name__ == '__main__':
  path = "/Users/common"
  result = extract(path)
  res_file = open("result.txt", "w")
  for s in result:
    res_file.write(s + "\n")

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 循环遍历字典元素的简单方法
Sep 11 Python
python中实现迭代器(iterator)的方法示例
Jan 19 Python
Python进阶学习之特殊方法实例详析
Dec 01 Python
Python实现简单遗传算法(SGA)
Jan 29 Python
用TensorFlow实现lasso回归和岭回归算法的示例
May 02 Python
python提取照片坐标信息的实例代码
Aug 14 Python
详解Python绘图Turtle库
Oct 12 Python
python安装和pycharm环境搭建设置方法
May 27 Python
django的autoreload机制实现
Jun 03 Python
python有几个版本
Jun 17 Python
Pytorch数据读取之Dataset和DataLoader知识总结
May 23 Python
python关于集合的知识案例详解
May 30 Python
python+django+rest框架配置创建方法
Aug 31 #Python
Python实现Restful API的例子
Aug 31 #Python
python递归下载文件夹下所有文件
Aug 31 #Python
python或C++读取指定文件夹下的所有图片
Aug 31 #Python
解决Django删除migrations文件夹中的文件后出现的异常问题
Aug 31 #Python
Django项目后台不挂断运行的方法
Aug 31 #Python
python遍历文件目录、批量处理同类文件
Aug 31 #Python
You might like
PHP如何利用P3P实现跨域
2013/08/24 PHP
linux平台编译安装PHP7并安装Redis扩展与Swoole扩展实例教程
2016/09/30 PHP
Laravel实现autoload方法详解
2017/05/07 PHP
php7安装yar扩展的方法详解
2017/08/03 PHP
JS array 数组详解
2009/03/22 Javascript
Jquery 弹出层插件实现代码
2009/10/24 Javascript
javascript表单验证使用示例(javascript验证邮箱)
2014/01/07 Javascript
解决json日期格式问题的3种方法
2014/02/02 Javascript
原生javascript实现获取指定元素下所有后代元素的方法
2014/10/28 Javascript
用canvas 实现个图片三角化(LOW POLY)效果
2016/02/18 Javascript
实践中学习AngularJS表单
2016/03/21 Javascript
jQuery图片查看插件Magnify开发详解
2017/12/25 jQuery
Angular @HostBinding()和@HostListener()用法
2018/03/05 Javascript
详解express + mock让前后台并行开发
2018/06/06 Javascript
vue超时计算的组件实例代码
2018/07/09 Javascript
jQuery实现的模仿雨滴下落动画效果
2018/12/11 jQuery
Vuex持久化插件(vuex-persistedstate)解决刷新数据消失的问题
2019/04/16 Javascript
详解微信小程序网络请求接口封装实例
2019/05/02 Javascript
M2实现Nodejs项目自动部署的方法步骤
2019/05/05 NodeJs
Nuxt配置Element-UI按需引入的操作方法
2020/07/06 Javascript
[34:39]DOTA2上海特级锦标赛主赛事日 - 4 败者组第四轮#1COL VS EG第二局
2016/03/05 DOTA
理解python多线程(python多线程简明教程)
2014/06/09 Python
Python 25行代码实现的RSA算法详解
2018/04/10 Python
基于python实现简单日历
2018/07/28 Python
PySide和PyQt加载ui文件的两种方法
2019/02/27 Python
python射线法判断一个点在图形区域内外
2019/06/28 Python
解决django后台管理界面添加中文内容乱码问题
2019/11/15 Python
python数据分析工具之 matplotlib详解
2020/04/09 Python
python如何变换环境
2020/07/21 Python
澳大利亚女性快速时尚零售商:Ally Fashion
2018/04/25 全球购物
丝芙兰意大利官方网站:Sephora.it
2019/12/13 全球购物
技术总监岗位职责
2013/12/05 职场文书
电子信息工程专业自荐书
2014/06/24 职场文书
小学雷锋月活动总结
2014/07/03 职场文书
ORACLE数据库对long类型字段进行模糊匹配的解决思路
2021/04/07 Oracle
Python函数对象与闭包函数
2022/04/13 Python