我想用writefile将一份数据写入到多个新文件中,每个新文件最大为2个,该如何实现
时间: 2024-03-02 12:52:48 浏览: 50
多种方式实现写文件
您可以按以下方式修改`writefile`函数,以便每次将数据写入2个文件中:
```
def writefile_multiple(filename_base, content, max_file_size=2):
num_files = math.ceil(len(content) / max_file_size) # 计算需要写入的文件数量
for i in range(num_files):
filename = f"{filename_base}_{i}.txt"
start = i * max_file_size
end = (i + 1) * max_file_size
content_segment = content[start:end] # 获取要写入的数据段
with open(filename, "w") as f:
f.write(content_segment)
```
在此修改后,您可以按以下方式调用`writefile_multiple`函数来将一份数据写入多个新文件中,每个新文件最大为2个:
```
content = "This is the data to be written to the files."
writefile_multiple("data", content, 2)
```
在上述示例中,我们将数据`content`写入了名为`data_0.txt`和`data_1.txt`的两个文件中,每个文件的大小最大为2个字符。如果数据的长度大于4个字符,那么将创建更多的文件来写入剩余的数据。
阅读全文