思路
代码目的
在做词云图的时候需要用到多个txt文件中的内容,但是一个个复制粘贴到一个文件中十分麻烦,因此需要借助python将多个txt内容合并到同一个txt文件中
代码模块
有两个模块,一个用于读取相关文件夹下的文件名,另一个读取并存储。
代码展示
def read_files():
"""该函数用于读取对应文件夹下各txt文件的名字"""
path = input("目标文件夹:") + '/' #建议直接将文件夹的绝对路径写入即可
files = os.listdir(path)
file_names=[]
for file in files:
if file.split('.')[-1] =='txt':#如果不是txt文件就跳过
file_names.append(file)
return path,file_names
def mixed_file( path,files):
"""该函数用于合并刚才读取的各文件
输入:文件路径,read_files()返回的文件名
输出:一个合并后的文件"""
content = ''
#读取文件
for file_name in files:
with open( path+file_name , 'r' ,encoding='utf-8') as file:
content = content + file.read()
file.close()
#保存文件
with open(path + '合并后的文件.txt', 'a',encoding='utf-8') as file:
file.write(content)
content = ''
file.close()
代码可直接运行
# -*- coding: utf-8 -*-
import os
def read_files():
"""该函数用于读取对应文件夹下各txt文件的名字"""
path = input("目标文件夹:") + '/'
files = os.listdir(path)
file_names=[]
for file in files:
if file.split('.')[-1] =='txt':#如果不是txt文件就跳过
file_names.append(file)
return path,file_names
def mixed_file( path,files):
"""该函数用于合并刚才读取的各文件
输入:文件路径,read_files()返回的文件名
输出:一个合并后的文件"""
content = ''
for file_name in files:
with open( path+file_name , 'r' ,encoding='utf-8') as file:
content = content + file.read()
file.close()
with open(path + '合并后的文件.txt', 'a',encoding='utf-8') as file:
file.write(content)
content = ''
file.close()
if __name__ == '__main__':
path,files = read_files()
mixed_file( path,files)
可直接运行文件
我最后把以上代码打包成.exe文件,临时需要的朋友可以直接下载使用: 点击即可