import os import pandas as pd import openpyxl writer = pd.ExcelWriter("Z163.xls", engine='openpyxl') # 我要生成的excel的文件路径是my_excel.xls num = 1 for root, dirs, files in os.walk('./data04'): print(root) # 当前目录路径 print(dirs) # 当前路径下所有子目录 print(files) # 当前路径下所有非目录子文件 for file in files: tmp = pd.read_csv("./data04/%s" % file, sep=' ') tmp.to_excel(excel_writer=writer, sheet_name=file) writer.save()
时间: 2023-06-05 14:04:23 浏览: 187
这段代码使用Python的os、pandas和openpyxl模块,导入了Excel文件相关的功能,其中pd和openpyxl模块分别用来读取和写入Excel文件,writer用于在Excel文件中创建新的sheet页,文件名为Z163.xls。
相关问题
import pandas as pd import os from openpyxl.styles import Font # 文件夹路径 folder_path = r'C:\yh\PycharmProjects\a\A5204990500002023050006' # 获取文件夹内所有的文件名 file_names = os.listdir(folder_path) # 读取所有的excel文件 dfs = [] for file_name in file_names: if file_name.endswith('.xlsx') or file_name.endswith('.xls'): file_path = os.path.join(folder_path, file_name) df = pd.read_excel(file_path) dfs.append(df) # 合并所有的数据 df_all = pd.concat(dfs) # 设置内容格式 font = Font(name='Arial', size=12, bold=False, italic=False, color='FF000000') writer = pd.ExcelWriter('all.xlsx', engine='openpyxl') df_all.to_excel(writer, index=False) for sheetname in writer.book.sheetnames: writer.sheets[sheetname].cell(row=1, column=1).font = font writer.save()
这段代码使用Python中的pandas和openpyxl库,读取指定文件夹下的所有Excel文件,将它们合并成一个Excel文件并添加内容格式。具体来说,代码首先定义文件夹路径,然后通过os.listdir()函数获取该文件夹下的所有文件名。接下来,使用一个循环读取所有的.xlsx和.xls文件,将它们存储在一个列表dfs中。最后,使用pd.concat()函数将所有的数据合并成一个DataFrame对象,然后使用openpyxl库将数据写入一个Excel文件中,并且对每个sheet页第一个单元格设置内容格式。最终生成的Excel文件名称为'all.xlsx'。
import pandas as pd import os # 文件夹路径 folder_path = r'C:\yh\PycharmProjects\a\A5204990500002023050006' # 获取文件夹内所有的文件名 file_names = os.listdir(folder_path) # 读取所有的excel文件 dfs = [] for file_name in file_names: if file_name.endswith('.xlsx') or file_name.endswith('.xls'): file_path = os.path.join(folder_path, file_name) df = pd.read_excel(file_path) dfs.append(df) # 合并所有的数据 df_all = pd.concat(dfs) # 打印结果 print(df_all) df_all = pd.DataFrame(df_all) df_all.to_excel('all.xlsx',index=False),设置内容格式
要设置内容格式,可以使用pandas的`ExcelWriter`函数和openpyxl库。下面是一个示例代码:
```python
import pandas as pd
import os
from openpyxl.styles import Font
# 文件夹路径
folder_path = r'C:\yh\PycharmProjects\a\A5204990500002023050006'
# 获取文件夹内所有的文件名
file_names = os.listdir(folder_path)
# 读取所有的excel文件
dfs = []
for file_name in file_names:
if file_name.endswith('.xlsx') or file_name.endswith('.xls'):
file_path = os.path.join(folder_path, file_name)
df = pd.read_excel(file_path)
dfs.append(df)
# 合并所有的数据
df_all = pd.concat(dfs)
# 设置内容格式
font = Font(name='Arial', size=12, bold=False, italic=False, color='FF000000')
writer = pd.ExcelWriter('all.xlsx', engine='openpyxl')
df_all.to_excel(writer, index=False)
for sheetname in writer.book.sheetnames:
writer.sheets[sheetname].cell(row=1, column=1).font = font
writer.save()
```
这段代码会将文件夹中所有的excel文件读取出来,并将它们合并成一个DataFrame,然后使用openpyxl库设置内容格式。注意,这里使用了pandas的`ExcelWriter`函数将DataFrame保存为excel文件,并在保存前使用openpyxl库设置单元格的字体样式。最后,使用`writer.save()`函数保存修改后的数据到文件中。
阅读全文