Python - 将多个文件数据写入主文件

pythonserver side programmingprogramming

文件处理是任何 Web 应用程序的重要组成部分。

Python 有多个函数用于创建、读取、更新和删除文件。

要写入现有文件,必须向 open() 函数添加一个参数 −

"a" − 附加 − 将附加到文件末尾

"w" − 写入 − 将覆盖任何现有内容

示例

import os
# 列出目录中的文件
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:
   # 检查文件是否存在
   # 如果是,则删除文件
   # 否则数据将附加到现有文件
   if len(tgt)>0:
      os.remove('D:\python' '\data_files\target_file\master.txt')
      open(tgt, 'a').close()
   else:
      # 创建一个空文件
      open(tgt, 'a').close()
except:
   head = open('D:\python' '\data_files\target_file\master.txt', 'a+')
   line ='empno, ename, sal'
   # 将标题写入输出
   print(head, line)
   head.close()
   # 以下循环将数据写入输出文件
   for line1 in lis:
      f_dir = file_dir+'\'+line1
      # 以读取模式打开文件
      in_file = open(f_dir, 'r+')
      # 以追加模式打开输出
      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()      
#使用 pandas
import pandas as pd
# pd.read_csv 创建数据框
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 函数连接帧
result = pd.concat(frames)
# to_csv 函数将输出写入文件
result.to_csv('D:\python\data_files' '\target_file\master.txt', encoding ='utf-8', index = False)

相关文章