-1
我是openpyxl的新手,用於將數據寫入excel。我實際上正在開發一個腳本,該腳本從動態網站中取消數據並將其保存爲excel。以下是將數據保存到Excel工作表的代碼。無法將數據分配給Worksheet.TypeError:'WriteOnlyWorksheet'對象沒有屬性'__getitem__'
from openpyxl import Workbook
from openpyxl import load_workbook
try:
wb = Workbook("MyData.xlsx") #Open Existing workbook
except:
wb = load_workbook("MyData.xlsx") #Open Existing workbook
wb.create_sheet("Trip Details") # Creating a Worksheet
trips_ws = wb.get_sheet_by_name("Trip Details")
row = 1
column = 0
trips_ws.column_dimensions['A'].width = 20
trips_ws.column_dimensions['F'].width = 40
trips_ws.column_dimensions['G'].width = 40
trips_ws['A1'] = 'Date'
trips_ws['B1'] = "Time"
trips_ws['C1'] = "Fare"
trips_ws['D1'] = "TripTime"
trips_ws['E1'] = "Distance"
trips_ws['G1'] = "PICKUP"
trips_ws['H1'] = "DROP"
但這正顯示出我的錯誤:
Traceback (most recent call last):
File "C:\Program Files (x86)\JetBrains\PyCharm Community Edition
2016.3.2\helpers\pydev\pydevd.py", line 1596, in <module>
globals = debugger.run(setup['file'], None, None, is_module)
File "C:\Program Files (x86)\JetBrains\PyCharm Community Edition
2016.3.2\helpers\pydev\pydevd.py", line 974, in run
pydev_imports.execfile(file, globals, locals) # execute the script
File "C:/Users/manje_000/PycharmProjects/test\Add2Excel.py", line 54, in Add_to_excel
trips_ws['A1'] = 'Date'
TypeError: 'WriteOnlyWorksheet' object does not support item assignment
搜索了這個有很多,但沒有發現任何東西。儘管按照正確的程序,任何人都可以告訴問題是什麼。
這是'try ... except'塊所覆蓋的。我們必須假設代碼不完整。 –
嘗試了這個沒有'try ... except'塊,'class Workbook'不會抱怨'String'的值。調試告訴'Workbook.write_only =「MyData.xlsx」'。所以他得到了一個'WriteOnlyWorksheet'。 – stovfl
感謝Stovfl的回覆。但我想補充一點,我想打開現有的工作簿來保存數據。我建議您將創建一個新的。 –