本人使用openpyxl創建xlsx檔案,并向其寫入資料,在執行如下代碼時:
ws_gzff=wb.create_sheet(title='工資統發_工資發放表_%s'%(nd),index=0)
execresult_array=[]
rowcount=1
for a in cursor_oracle:
rowcount+=1
execresult_array.append(a)
gzff_title=[i[0] for i in cursor_oracle.description] #讀取表欄位名
#遍歷表欄位,將表欄位插入excle表的ws標簽的表頭。
for i,description in enumerate(gzff_title):
ws_gzff.cell(row=1, column = 1 + i).value=https://bbs.csdn.net/topics/description #向excle表的ws_gwksk標簽插入表頭,即表欄位
#讀取表記錄到excel
#因為第一行已插入欄位,因此表記錄要從第二行插入
for rowNum in range(2,rowcount+1): #行
for columnNum in range(1,len(gzff_title)+1):
cell=ws_gzff.cell(row=rowNum,column=columnNum)
cell.value=https://bbs.csdn.net/topics/execresult_array[rowNum-2][columnNum-1]
提示了MemoryError錯誤,如下:
Exception in thread Thread-1:
Traceback (most recent call last):
File "C:\Python35-32\lib\threading.py", line 914, in _bootstrap_inner
self.run()
File "C:\Users\zhwlyfx\Desktop\財政管理系統資料標準化.py", line 148, in run
result=frame.GKJZZF_TO_EXCEL(systempassword,user_yw,dw,exportdir)
File "C:\Users\zhwlyfx\Desktop\財政管理系統資料標準化.py", line 10638, in GKJZZF_TO_EXCEL
cell=ws_zfsq.cell(row=rowNum,column=columnNum)
File "C:\Python35-32\lib\site-packages\openpyxl\worksheet\worksheet.py", line 238, in cell
cell = self._get_cell(row, column)
File "C:\Python35-32\lib\site-packages\openpyxl\worksheet\worksheet.py", line 253, in _get_cell
self._add_cell(cell)
File "C:\Python35-32\lib\site-packages\openpyxl\worksheet\worksheet.py", line 264, in _add_cell
self._cells[(row, column)] = cell
MemoryError
請問怎么辦,我想捕捉這個MemoryError錯誤,怎么捕捉啊,在那條陳述句使用try啊
uj5u.com熱心網友回復:
解決了,安裝64位的python就可以了轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/177183.html
上一篇:python中for回圈問題代碼
