Python 3.7中的KeyError

时间:2019-06-26 14:06:13

标签: python openpyxl keyerror

代码最后给出一个错误,提示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

     

回溯(最近通话最近):文件   “ C:/用户/bhargav/PycharmProjects/SelfLearning/app.py”,第26行,在          工作= process_workbook(文件名)

     

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

     

文件   “ C:\ Users \ bhargav \ PycharmProjects \ SelfLearning \ venv \ lib \ site-packages \ openpyxl \ reader \ excel.py”,   load_workbook中的第312行       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”,   read_manifest中的第136行       src = self.archive.read(ARC_CONTENT_TYPES)

     

文件   “ C:\ Users \ bhargav \ AppData \ Local \ Programs \ Python \ Python37-32 \ lib \ zipfile.py”,   第1428行,处于读取状态       使用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的项目'%名称)KeyError:“存档中没有名为'[Content_Types] .xml'的项目”

     

以退出代码1完成的过程

1 个答案:

答案 0 :(得分:0)

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