【问题标题】:KeyError in python 3.7python 3.7中的KeyError
【发布时间】:2019-06-26 14:06:13
【问题描述】:

代码最后给出了一个错误,说 KeyError。但我相信导师写的代码是正确的。

import openpyxl as xl
from openpyxl.chart import BarChart, Reference

def process_workbook(filename):
    wb = xl.load_workbook(filename)
    sheet = wb['Sheet1']

    for row in range(2,sheet.max_row + 1):
        cell = sheet.cell(row, 3)
        corrected_price = cell.value * 0.9
        corrected_price_cell = sheet.cell(row,4)
        corrected_price_cell.value = corrected_price

    values = Reference(sheet,
              min_row = 2 ,
              max_row = sheet.max_row,
              min_col = 4,
              max_col = 4)

    chart = BarChart() #instance of BarChart class
    chart.add_data(values)
    sheet.add_chart(chart, 'e2')
    wb.save(filename)

filename = 'transactions.xlsx'
work = process_workbook(filename)

C:\Users\bhargav\PycharmProjects\SelfLearning\venv\Scripts\python.exe C:/Users/bhargav/PycharmProjects/SelfLearning/app.py

Traceback(最近一次调用最后一次):文件 “C:/Users/bhargav/PycharmProjects/SelfLearning/app.py”,第 26 行,在 工作 = 进程工作簿(文件名)

文件“C:/Users/bhargav/PycharmProjects/SelfLearning/app.py”,第 5 行, 在 process_workbook wb = xl.load_workbook(文件名)

文件 "C:\Users\bhargav\PycharmProjects\SelfLearning\venv\lib\site-packages\openpyxl\reader\excel.py", 第 312 行,在 load_workbook 中 reader.read()

文件 "C:\Users\bhargav\PycharmProjects\SelfLearning\venv\lib\site-packages\openpyxl\reader\excel.py", 第 268 行,已读 self.read_manifest()

文件 "C:\Users\bhargav\PycharmProjects\SelfLearning\venv\lib\site-packages\openpyxl\reader\excel.py", 第 136 行,在 read_manifest 中 src = self.archive.read(ARC_CONTENT_TYPES)

文件 "C:\Users\bhargav\AppData\Local\Programs\Python\Python37-32\lib\zipfile.py", 第 1428 行,读取中 with self.open(name, "r", pwd) as fp:

文件 "C:\Users\bhargav\AppData\Local\Programs\Python\Python37-32\lib\zipfile.py", 第 1467 行,打开 zinfo = self.getinfo(name)

文件 "C:\Users\bhargav\AppData\Local\Programs\Python\Python37-32\lib\zipfile.py", 第 1395 行,在 getinfo 中 '存档中没有名为 %r 的项目' % name) KeyError: "存档中没有名为 '[Content_Types].xml' 的项目"

进程以退出代码 1 结束

【问题讨论】:

  • 你试过大写的 E
  • “中间的许多错误行”对于回答问题可能非常重要
  • 是的,我尝试使用“E”但没有用
  • 你有正确的文件名吗?如果你这样做,文件是否与你的文件在同一目录中?
  • 也许你应该看看最后一个错误......

标签: python openpyxl keyerror


【解决方案1】:

检查文件“transactions.xlsx”是否在同一个文件夹中。

【讨论】:

  • 是的,它在同一个文件夹中
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-03-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-12
相关资源
最近更新 更多