简体   繁体   English

python 3.7中的KeyError

[英]KeyError in python 3.7

The code gives an error saying KeyError in the end.代码最后给出了一个错误说 KeyError 。 But I believe the code is correct as written by the tutor.但我相信导师写的代码是正确的。

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:\\Users\\bhargav\\PycharmProjects\\SelfLearning\\venv\\Scripts\\python.exe C:/Users/bhargav/PycharmProjects/SelfLearning/app.py

Traceback (most recent call last): File "C:/Users/bhargav/PycharmProjects/SelfLearning/app.py", line 26, in work = process_workbook(filename)回溯(最近一次通话):文件“C:/Users/bhargav/PycharmProjects/SelfLearning/app.py”,第 26 行,在 work = process_workbook(filename)

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

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

File "C:\\Users\\bhargav\\PycharmProjects\\SelfLearning\\venv\\lib\\site-packages\\openpyxl\\reader\\excel.py", line 268, in read self.read_manifest()文件“C:\\Users\\bhargav\\PycharmProjects\\SelfLearning\\venv\\lib\\site-packages\\openpyxl\\reader\\excel.py”,第268行,读取self.read_manifest()

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

File "C:\\Users\\bhargav\\AppData\\Local\\Programs\\Python\\Python37-32\\lib\\zipfile.py", line 1428, in read with self.open(name, "r", pwd) as fp:文件“C:\\Users\\bhargav\\AppData\\Local\\Programs\\Python\\Python37-32\\lib\\zipfile.py”,第 1428 行,用 self.open(name, "r", pwd) 作为 fp 读取:

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

File "C:\\Users\\bhargav\\AppData\\Local\\Programs\\Python\\Python37-32\\lib\\zipfile.py", line 1395, in getinfo 'There is no item named %r in the archive' % name) KeyError: "There is no item named '[Content_Types].xml' in the archive"文件“C:\\Users\\bhargav\\AppData\\Local\\Programs\\Python\\Python37-32\\lib\\zipfile.py”,第 1395 行,在 getinfo 中'存档中没有名为 %r 的项目'% 名称)KeyError: “存档中没有名为‘[Content_Types].xml’的项目”

Process finished with exit code 1进程以退出代码 1 结束

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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM