如何使用python代码,从当前文件夹一个文件里复制字符到另一个文件夹下的同名文件里,文件有多个!
用python向一个文件夹里遍历所有文本文件,并从中提取出指定内容,写到另一个文件夹下的文件里,要求文件名相同,因为文件较多不想一个一个手动写文件名,我还如何操作,请各位...
用python向一个文件夹里遍历所有文本文件,并从中提取出指定内容,写到另一个文件夹下的文件里,要求文件名相同,因为文件较多不想一个一个手动写文件名,我还如何操作,请各位老师不吝赐教
展开
8个回答
展开全部
import os
# 参数设置
# 自行定义源文件地址和目标地址
_TARGET_DIR = "./copied_files/"
_SOURCE_DIR = "./source_files/"
# 你自己定义的提取特定信息的方法:
def extract(filename):
# 提取信息后返回
with open(filename, "r") as f:
info = f.readlines()
return info
# 使用os.listdir()方法获取源文件夹中所有文件
# 有时系统内会有些隐藏文件以"."开头,需要剔除
files = [file for file in os.listdir(_SOURCE_DIR) if not file.startswith(".")]
for filename in files:
# 1.读取文件并提取信息:
print("正在处理{}...".format(filename))
info = extract(_SOURCE_DIR + filename)
# 2.在目标文件夹创建同名文件,并将信息写入
# 写入部分或需要根据需要调整
with open(_TARGET_DIR + filename, "w") as f:
for line in info:
f.write(line)
print("处理完成!")
展开全部
import os
import re
reg=re.compile("指定内容正则表达式")
source="一个文件夹路径"
target="另一个文件夹路径"
for filename in os.listdir(source):
fullname=os.path.join(source,filename)
targetfile=os.path.join(target,filename)
if os.path.isfile(fullname) and os.path.splitext(filename)[1].lower()==".txt":
text=reg.search(open(fullname).read()).group(0)
open(targetfile,'w').write(text)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
import os,re
src_path = ''#src_path指源文件夹路径
des_path = ''#目标文件夹路径
pattern = re.compile(r'')#指定内容正则表达式
for root,paths,files in os.walk(src_path):
for file in files:#遍历源文件
with open(os.path.join(root, file), 'r') as f1:#打开源文件
with open(os.path.join(des_path, file), 'w+') as f2:#新建并打开新文件,文件名相同
f2.writer(pattern.match(f1.read()).group(0))#正则提取内容写入新文件,ps根据需要修改正则
src_path = ''#src_path指源文件夹路径
des_path = ''#目标文件夹路径
pattern = re.compile(r'')#指定内容正则表达式
for root,paths,files in os.walk(src_path):
for file in files:#遍历源文件
with open(os.path.join(root, file), 'r') as f1:#打开源文件
with open(os.path.join(des_path, file), 'w+') as f2:#新建并打开新文件,文件名相同
f2.writer(pattern.match(f1.read()).group(0))#正则提取内容写入新文件,ps根据需要修改正则
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2019-01-17
展开全部
#! /usr/bin/env python
# coding=utf-8
import os
import shutil
import time
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
def copy_and_rename(fpath_input, fpath_output):
for file in os.listdir(fpath_input):
oldname = os.path.join(fpath_input, file)
newname_1 = os.path.join(fpath_output,
os.path.splitext(file)[0] + "_1.jpg")
newname_2 = os.path.join(fpath_output,
os.path.splitext(file)[0] + "_2.jpg")
newname_3 = os.path.join(fpath_output,
os.path.splitext(file)[0] + "_3.jpg")
shutil.copyfile(oldname, newname_1)
shutil.copyfile(oldname, newname_2)
shutil.copyfile(oldname, newname_3)
if __name__ == '__main__':
print('start ...')
t1 = time.time() * 1000
#time.sleep(1) #1s
fpath_input = "D:/123/0708/"
fpath_output = "D:/345/0708/"
copy_and_rename(fpath_input, fpath_output)
t2 = time.time() * 1000
print('take time:' + str(t2 - t1) + 'ms')
print('end.')
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
os.walk()了解下,这个可以实现遍历。
总正则把符合的抓出来,然后在写入另外一个文件夹即可。
总正则把符合的抓出来,然后在写入另外一个文件夹即可。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询