python将a.txt的内容复制到b.txt 中
# 1. 用r方式打开a.txt
f = open("a.txt","r")
# 2. 读取a.txt的内容
buf = f.read()
# 3. 关闭a.txt
f.close
# 4. 用w或者a的方式打开b.txt
f = open("b.txt","w")
# 5. 将文件写入b.txt中
f.write(buf)
# 6. 关闭b.txt
f.close()
python合并多个txt中的内容到一个txt中
在使用python进行合并多个txt的内容时,使用如下:
with open(filepath,'w') as f:
f.write(line)
会导致将原来的filepath中的内容进行覆盖,如何进行不覆盖形式的编写呢,我们可以进行先读行再写的方式(先readlines(),后write),源代码如下,同时还包含将文章中的符号、数字等的去除:
import os
import re
import sys
mefile_name=['D:\\LDA\\LdaStemDocs2\\breast cancer\\','D:\\LDA\\LdaStemDocs2\\colon cancer\\','D:\\LDA\\LdaStemDocs2\\lung cancer\\','D:\\LDA\\LdaStemDocs2\\NHL\\','D:\\LDA\\LdaStemDocs2\\pancreatic cancer\\','D:\\LDA\\LdaStemDocs2\\prostate cancer\\','D:\\LDA\\LdaStemDocs2\\urinary bladder cancer\\']
for i in range(len(mefile_name)):
for j in range(len(datil_name)):
meragefiledir=mefile_name[i]+datil_name[j]
filenames=os.listdir(meragefiledir)
filestore_name='\\result_.txt'
with open(filestore_name,'w',encoding='utf-8') as f:
for filename in filenames:
filepath=meragefiledir+'\\'
filepath=filepath+filename
for line in open(filepath).readlines():
line=re.findall(r'[a-zA-Z]+\s+[a-zA-Z\s]*',line)
line="".join(line)
#print(line)
f.write(line+'\n')
#f.write('\n')
print('combine {0}{1} ending~~~~~~\n'.format(mefile_name[i],datil_name[j]))
print('ending all')
以上代码删除了原有的open(file)路径,具体根据自己的文件路径进行添加。
总结
这些仅为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。