Python 当使用writer.sheets方法时,Pandas.ExcelWriter键出错

Python 当使用writer.sheets方法时,Pandas.ExcelWriter键出错,python,pandas,xlsxwriter,Python,Pandas,Xlsxwriter,请帮忙,我不知道为什么会发生这个错误。我以前使用过这段代码,没有任何问题。我希望这不是什么愚蠢的事情。永远感谢你的帮助 版本: python 3.6 pd 0.23.0 XLSXSwriter 1.0.4 writer = pd.ExcelWriter('Output.xlsx', engine='xlsxwriter') workbook = writer.book worksheet = writer.sheets['Sheet1'] 输出: Traceback (most recent

请帮忙,我不知道为什么会发生这个错误。我以前使用过这段代码,没有任何问题。我希望这不是什么愚蠢的事情。永远感谢你的帮助

版本:

python 3.6

pd 0.23.0

XLSXSwriter 1.0.4

writer = pd.ExcelWriter('Output.xlsx', engine='xlsxwriter')
workbook  = writer.book
worksheet = writer.sheets['Sheet1']
输出:

Traceback (most recent call last):
File "/opt/eclipse/dropins/plugins/org.python.pydev.core_7.2.0.201903251948/pysrc/_pydevd_bundle/pydevd_exec2.py", line 3, in Exec
exec(exp, global_vars, local_vars)
File "<console>", line 1, in <module>
KeyError: 'Sheet1'
回溯(最近一次呼叫最后一次):
文件“/opt/eclipse/dropins/plugins/org.python.pydev.core_7.2.0.201903251948/pysrc/_pydevd_bundle/pydevd_exec2.py”,第3行,在Exec中
执行官(exp、全局变量、本地变量)
文件“”,第1行,在
KeyError:“Sheet1”

您没有创建工作表1

这里有一个例子:

import pandas as pd

# Create a Pandas dataframe from the data.
df = pd.DataFrame({'Data': [10, 20, 30, 20, 15, 30, 45]})

# Create a Pandas Excel writer using XlsxWriter as the engine.
writer = pd.ExcelWriter('pandas_simple.xlsx', engine='xlsxwriter')

# Convert the dataframe to an XlsxWriter Excel object.
df.to_excel(writer, sheet_name='Sheet1') ***#this is where you create Sheet 1***

# Get the xlsxwriter objects from the dataframe writer object.
workbook  = writer.book
worksheet = writer.sheets['Sheet1'] ***#here is where you select it***

如果您正在使用Pandas,则应使用该函数。那就容易多了!:)

在使用excel文件之前,您必须将工作表添加到excel文件中,如下所示:

    excel_writer = pandas.ExcelWriter('f2.xlsx',mode ='w',engine='xlsxwriter')
    workbook  = excel_writer.book
    excel_writer.sheets={'Sheet1':workbook.add_worksheet()}
    worksheet = excel_writer.sheets['Sheet1']

我想到的第一件事是:你把你的
Sheet1
命名为其他名字了吗?@prp是的。字符串似乎无关紧要。不管字符串是什么,您试图引用的是尚不存在的内容。我同意,在这种情况下,我将向excel添加不支持thanksThank you@mauve的图像和图表!你是对的,我需要先调用excel。