问题描述
能帮我解决此错误吗?尝试写入大文件时出现错误,有什么办法可以解决此错误:
File "C:\ProgramData\Anaconda3\lib\zipfile.py",line 1696,in _writecheck
" would require ZIP64 extensions")
LargeZipFile: Filesize would require ZIP64 extensions
这是堆栈跟踪
File "<ipython-input-1-211b07c43cd8>",line 1,in <module>
runfile('C:/Users/Administrator/Desktop/new_paul.py',wdir='C:/Users/Administrator/Desktop')
File "C:\ProgramData\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py",line 786,in runfile
execfile(filename,namespace)
File "C:\ProgramData\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py",line 110,in execfile
exec(compile(f.read(),filename,'exec'),namespace)
File "C:/Users/Administrator/Desktop/new_paul.py",line 106,in <module>
output_df = gen_stats()
File "C:/Users/Administrator/Desktop/new_paul.py",line 104,in gen_stats
return merge_main(all_users)
File "C:/Users/Administrator/Desktop/new_paul.py",line 99,in merge_main
all_users.to_excel('main_with_features_300win.xlsx',index=False)
File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\generic.py",line 2127,in to_excel
engine=engine)
File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\io\formats\excel.py",line 664,in write
writer.save()
File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\io\excel.py",line 1952,in save
return self.book.close()
File "C:\ProgramData\Anaconda3\lib\site-packages\xlsxwriter\workbook.py",line 306,in close
self._store_workbook()
File "C:\ProgramData\Anaconda3\lib\site-packages\xlsxwriter\workbook.py",line 679,in _store_workbook
xlsx_file.write(os_filename,xml_filename)
File "C:\ProgramData\Anaconda3\lib\zipfile.py",line 1743,in write
with open(filename,"rb") as src,self.open(zinfo,'w') as dest:
File "C:\ProgramData\Anaconda3\lib\zipfile.py",line 1470,in open
return self._open_to_write(zinfo,force_zip64=force_zip64)
File "C:\ProgramData\Anaconda3\lib\zipfile.py",line 1580,in _open_to_write
self._writecheck(zinfo)
File "C:\ProgramData\Anaconda3\lib\zipfile.py",in _writecheck
" would require ZIP64 extensions")
LargeZipFile: Filesize would require ZIP64 extensions
解决方法
初始化class UserLoginSerializer(serializers.Serializer):
email = serializers.EmailField()
password = serializers.CharField(write_only=True)
def validate(self,data):
... # your validate method
时需要传递标记allowZip64=True
,以允许它存储大于4GB或大于4GB的文件。
大概这是需要在您使用的实现ZipFile
的任何库中修复的问题。您没有在问题中包括该图书馆的身份,因此我们在这里无法与之交谈。
基于@Charles Duffy的分析,您可以使用xlsxwriter引擎启用ZIP64扩展,如下所示:
writer = pd.ExcelWriter('pandas.xlsx',engine='xlsxwriter')
df.to_excel(writer,sheet_name='Sheet1')
writer.book.use_zip64()