Python - 将多个文件数据写入主文件
文件处理是在任何网络应用程序中很重要的一部分。
Python 有一些用来创建、读取、更新和删除文件的函数。
要写到一个现有文件,你必须给 open()函数添加一个参数 −
"a" – 追加 – 将追加到文件结尾
"w" – 写入 – 将覆盖任何现有内容
示例
import os
# list the files in directory
lis = os.listdir('D:\python' '\data_files\data_files')
print(lis)
tgt = os.listdir('D:\python' '\data_files\target_file')
file_dir ='D:\python\data_files\data_files'
out_file = r'D:\python\data_files\target_file\master.txt'
ct = 0
print('target file :', tgt)
try:
# check for if file exists
# if yes delete the file
# otherwise data will be appended to existing file
if len(tgt)>0:
os.remove('D:\python' '\data_files\target_file\master.txt')
open(tgt, 'a').close()
else:
# create an empty file
open(tgt, 'a').close()
except:
head = open('D:\python' '\data_files\target_file\master.txt', 'a+')
line ='empno, ename, sal'
# write header to output
print(head, line)
head.close()
# below loop to write data to output file
for line1 in lis:
f_dir = file_dir+'\'+line1
# open files in read mode
in_file = open(f_dir, 'r+')
# open output in append mode
w = open(out_file, 'a+')
d = in_file.readline()
d = in_file.readlines()
w.write("\n")
for line2 in d:
print(line2)
w.write(line2)
ct = ct + 1
w.close()
#using pandas
import pandas as pd
# pd.read_csv creates dataframes
df1 = pd.read_csv('D:\python\data_files\data_files\emp_1.txt')
df2 = pd.read_csv('D:\python\data_files\data_files\emp_2.txt')
df3 = pd.read_csv('D:\python\data_files\data_files\emp_3.txt')
frames = [df1, df2, df3]
# concat function concatenates the frames
result = pd.concat(frames)
# to_csv function writes output to file
result.to_csv('D:\python\data_files' '\target_file\master.txt', encoding ='utf-8', index = False)
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP