只用python拆分csv文件
时间: 2024-04-12 12:24:48 浏览: 13
在Python中,可以使用csv模块来拆分CSV文件。下面是一个简单的示例代码,演示了如何使用Python拆分CSV文件:
```python
import csv
def split_csv(input_file, output_prefix, chunk_size):
with open(input_file, 'r') as file:
reader = csv.reader(file)
header = next(reader) # 读取CSV文件的头部
count = 1
while True:
output_file = f"{output_prefix}_{count}.csv"
with open(output_file, 'w', newline='') as output:
writer = csv.writer(output)
writer.writerow(header) # 写入CSV文件的头部
rows = []
for _ in range(chunk_size):
try:
row = next(reader)
rows.append(row)
except StopIteration:
break
if not rows:
break
writer.writerows(rows)
count += 1
# 示例用法
split_csv('input.csv', 'output', 1000)
```
上述代码中,`split_csv`函数接受三个参数:`input_file`表示输入的CSV文件名,`output_prefix`表示输出文件的前缀,`chunk_size`表示每个拆分文件的行数。
代码首先打开输入文件,并创建一个CSV读取器。然后,它读取CSV文件的头部,并在每个拆分文件中写入相同的头部。
接下来,代码进入一个循环,每次迭代都会创建一个新的拆分文件。在每个拆分文件中,代码从输入文件中读取指定数量的行,并将它们写入拆分文件中。如果无法读取更多行,则循环结束。
最后,代码会自动为每个拆分文件命名,并在文件名中包含一个递增的计数器。