使用 open() 函数将大字符串数据保存到文本文件时内存不足
out of memory when saving a large string data into a text file using open() function
我尝试使用以下代码将大字符串数据保存到文本文件中。
@api.route("/upload/{project_name}/files")
async def receive_files(req, resp, *, project_name):
@api.background.task
def save_files(uploaded_data, project_name):
filename = uploaded_data['filename']
filedata = uploaded_data['data']
with open(f"data/{project_name}/{filename}", "w", encoding="utf-8", newline="") as f:
f.write(str(data))
print('successfully saved', filename)
data = await req.media()
save_files(data, project_name)
resp.media = {'success': True}
当我向这个函数发送一个像 600MB 的 csv 文件这样的大文件时,这个过程由于内存不足而失败。它适用于小于 300MB 的文件。有什么办法可以优化这个功能??提前谢谢你。
我正在使用 python-responder 和一台配备 16GB RAM 的笔记本电脑
我忘记传递正确的媒体格式,响应者的文件-python。
data = await req.media(format='files')
我尝试使用以下代码将大字符串数据保存到文本文件中。
@api.route("/upload/{project_name}/files")
async def receive_files(req, resp, *, project_name):
@api.background.task
def save_files(uploaded_data, project_name):
filename = uploaded_data['filename']
filedata = uploaded_data['data']
with open(f"data/{project_name}/{filename}", "w", encoding="utf-8", newline="") as f:
f.write(str(data))
print('successfully saved', filename)
data = await req.media()
save_files(data, project_name)
resp.media = {'success': True}
当我向这个函数发送一个像 600MB 的 csv 文件这样的大文件时,这个过程由于内存不足而失败。它适用于小于 300MB 的文件。有什么办法可以优化这个功能??提前谢谢你。
我正在使用 python-responder 和一台配备 16GB RAM 的笔记本电脑
我忘记传递正确的媒体格式,响应者的文件-python。
data = await req.media(format='files')