python写入多页csv
时间: 2024-09-19 22:18:05 浏览: 48
在Python中,如果你想要写入多页CSV文件,也就是分块保存大型数据集,你可以使用pandas库配合`to_csv`函数的chunksize参数。`chunksize`允许你将大表分割成一系列较小的DataFrame,然后逐块地写入CSV文件。
下面是一个示例:
```python
import pandas as pd
# 假设你有一个大列表data,你想将其写入CSV文件
data = ... # 你的大量数据
# 创建一个空的数据框用于接收每个块
writer = pd.DataFrame()
# 设置 chunksize (比如1000行作为一个块)
chunk_size = 1000
for i in range(0, len(data), chunk_size):
# 提取一个块的数据
chunk = data[i:i+chunk_size]
# 将块转换为 DataFrame 并写入 CSV 文件
df_chunk = pd.DataFrame(chunk)
writer = writer.append(df_chunk)
# 每写完一块就保存到文件中
filename = 'large_file.csv'
writer.to_csv(filename, index=False, mode='a', header=(i == 0)) # 初始写入时设置header=True,后续不设
# 写完所有块后再一次性关闭文件
writer.to_csv(filename, index=False, if_exists='append')
```
在这个例子中,`mode='a'`表示追加模式,`header=(i == 0)`确保第一次写入时包含列头,之后不再写入。
阅读全文