Python 无法将数据分配给工作表。类型错误:';WriteOnly工作表';对象没有属性'__获取项目';

Python 无法将数据分配给工作表。类型错误:';WriteOnly工作表';对象没有属性'__获取项目';,python,excel,openpyxl,Python,Excel,Openpyxl,我是openpyxl的新手,可以将数据写入excel。实际上,我正在开发一个脚本,从动态网站中删除数据并将其保存到excel。以下是将数据保存到excel工作表的代码 from openpyxl import Workbook from openpyxl import load_workbook try: wb = Workbook("MyData.xlsx") #Open Existing workbook except: wb = load_workbook("MyDat

我是openpyxl的新手,可以将数据写入excel。实际上,我正在开发一个脚本,从动态网站中删除数据并将其保存到excel。以下是将数据保存到excel工作表的代码

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
回溯(最近一次呼叫最后一次):
文件“C:\ProgramFiles(x86)\JetBrains\PyCharm社区版
2016.3.2\helpers\pydev\pydevd.py“,第1596行,在
globals=debugger.run(setup['file'],None,None,is_模块)
文件“C:\ProgramFiles(x86)\JetBrains\PyCharm社区版
2016.3.2\helpers\pydev\pydevd.py“,第974行,运行中
pydev_imports.execfile(文件、全局、局部)#执行脚本
文件“C:/Users/manje_000/PycharmProjects/test\Add2Excel.py”,第54行,添加到excel中
trips_ws['A1']=“日期”
TypeError:“WriteOnlySheet”对象不支持项分配
我找了很多,但什么也找不到。尽管遵循了正确的程序,但有人能说出问题出在哪里。

问题出在线路上

wb = Workbook("MyData.xlsx") #Open Existing workbook
无法使用
类工作簿(…)
打开现有工作簿
唯一的参数是
类工作簿(write_only=True | False)

尝试不使用字符串:
wb=Workbook()

: 在只写工作簿中,只能使用append()添加行。无法使用cell()或iter_rows()在任意位置写入(或读取)单元格。

如果要向现有工作簿添加数据:

将工作表添加到现有工作簿的示例,以及 将字符串“Date”写入单元格“A1”

wb = load_workbook("MyData.xlsx") #Open Existing workbook
trips_ws = wb.create_sheet("Trip Details")  # Append a new Worksheet  
trips_ws['A1'] = 'Date'
wb.save("MyData.xlsx")

返回并将您的问题标记为已回答,如果这对您有效,或评论原因。

这在
try…块中包括,但
块除外。我们必须假设代码不完整。在没有
try的情况下尝试此操作…除了
块之外,
类工作簿
不会抱怨
字符串
值。调试告诉
工作簿。只写=“MyData.xlsx”
。因此,他收到了一份
书面工作表
。感谢Stovfl的回复。但我想补充一点,我想打开现有工作簿来保存数据。我相信你的建议将创建一个新的。我也尝试了你所说的,在这种情况下,它没有显示任何错误,但仍然没有向文件添加任何数据