python的N个小功能(文件内容的匹配替换)
# -*- coding: utf-8 -*-
"""
Created on Fri Feb 17 20:25:05 2017
@author: who
"""
import os
import os.path
import re
import string
rootdir=r'D:\test'
for parent, dirnames, filenames in os.walk(rootdir): # 三个参数:分别返回1.父目录 2.所有文件夹名字(不含路径) 3.所有文件名字
try:
for filename in filenames:
filenamepre=os.path.splitext(filename.decode("gbk"))[0];#文件名前缀
filetype=os.path.splitext(filename.decode("gbk"))[1].lower();#文件扩展名
pswpath = os.path.join(parent, filename.decode("gbk"));
tmppath = os.path.join(r'D:\testxx',filename.decode("gbk")) #写到另一个文件夹#
if filetype=='.txt':
a=string.find(filenamepre,'9999') ####符合类型的文件####
if a==0:
tmp_file = open(tmppath, "w")
with open(pswpath) as f:
lines = f.readlines()
for line in lines: ####一行一行读取 ####
if line.find('aaa') > -1: ####找到含aaa有的这行,匹配出对应整数数字####
m=re.compile('aaa([0-9]+)')
ms=m.search(line)
print ms.group(1)
line.replace(ms.group(1),filenamepre) ####进行替换
tmp_file.write(line.replace(ms.group(1),filenamepre)) ###写出替换的该行
else:
tmp_file.write(line)
tmp_file.close()
else:
tmp_file = open(tmppath, "w")
with open(pswpath) as f:
lines = f.readlines()
for line in lines: ####一行一行读取 ####
tmp_file.write(line)
tmp_file.close()
except IOError:
pass
python的N个小功能(文件内容的匹配替换)的更多相关文章
- Python批量修改Excel中的文件内容
import osimport xlrdfrom xlutils.copy import copydef base_dir(filename=None): return os.path.join ...
- Python跳过第一行读取文件内容
Python编程时,经常需要跳过第一行读取文件内容.比较容易想到是为每行设置一个line_num,然后判断line_num是否为1,如果不等于1,则进行读取操作.相应的Python代码如下: inpu ...
- windows7搜索python java go php等其他文件内容
1.添加文件内容搜索配置 2.将需要搜索的文件索引,添加至windows索引 控制面板->索引选项->高级->文件类型 把需要搜索的文件添加一下索引 3.如果不行的话,那么还是在索引 ...
- linux几种常见的文件内容查找和替换命令
作为一个以前没怎么接触过linux的小白,开始使用linux,各种不习惯,这周遇到一个文件内容测查找和替换的需求.学习了以下几种实现方式: 1.vi命令下的查找和替换 1.1 vi下的查找 /patt ...
- python的N个小功能(更新文件)
########################################################################## #对于第二份文件:第一份与第二份不相同,以第二份为 ...
- python web开发-flask读取txt文件内容
某些情况下,需要读取flask网站要目录下的txt文件.但是直接在flask网站的目录下创建一个文件是无法访问的.从网站找了一些资料,最终发现通过写一个方法返回txt内容比较简单方便,不过此方法适用于 ...
- python的N个小功能(找到要爬取的验证码链接,并大量下载验证码样本)
# -*- coding: utf-8 -*- """ Created on Mon Mar 21 11:04:54 2017 @author: sl "&qu ...
- python的N个小功能(连接数据库并下载相应位置的图片)
#################################################################################################### ...
- python的N个小功能(找到符合要求的图片,重命名,改格式,缩放,进行随机分配)
########################################################################## 循环读取该目录下所有子目录和子文件 ####### ...
随机推荐
- PGP的原理与使用
实验名称: PGP的原理与使用 姓名: 刘浩 20155307 任泓霖 20155319 班级: 1553 日期: 2017.10.16 一. 实验环境 Windows虚拟机下使用的是PKZIP2.0 ...
- C# JSON和对象之间互相转换
1.首先是声明用户信息对象,DataContract修饰类,表示可以被解析成JSON,DataMember修饰属性,Order表示 解析的顺序,另外Lover是数组列表,表示女朋友个数 Address ...
- swift3.0通过响应链获取当前试图的控制器
func parentViewController() -> UIViewController? { let n = next while n != nil { let controller = ...
- day1 ORM
ORM对象关系映射 映射关系: 表名 <-------> 类名 字段 <-------> 属性 表记录 <------->类实例对象 class Customer( ...
- CF 1083 A. The Fair Nut and the Best Path
A. The Fair Nut and the Best Path https://codeforces.com/contest/1083/problem/A 题意: 在一棵树内找一条路径,使得从起点 ...
- python 布尔值 bool( ) 与逻辑运算符
逻辑运算符 not and or 运算符优先级 not > and >or printer(x or y) x为非零,则返回x,否则返回y print(1 or 2) print(3 o ...
- vue 3.0使用 BUG解决
最近在做vue的项目,吊进了很多坑,这些坑很浅,但一旦掉进去了,不花点功夫还爬不出来.所以总结下,当做下笔记,持续更新 1.<router-link> 里加的事件没反应 错误代码: < ...
- python 内置模块(os)
1.OS os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径os.chdir("dirname") 改变当前脚本工作目录:相当于shell下cdos. ...
- Django之视图系统
Django的View(视图) 一个视图函数(类),简称视图,是一个简单的python函数(类),它接受web请求并返回web响应. 响应可以是一张网页的HTML内容,一个重定向,一个404错误,或者 ...
- CentOS安装输入法及kDE桌面
参考教程:https://jingyan.baidu.com/article/154b46317fdfce28ca8f419e.html