如何在 openpyxl Python 中打开工作簿后打开文本文件

问题描述 投票:0回答:2

我一直在尝试使用 openpyxl 在我的 excel 工作表上附加一些数据,然后在我的文本文件中附加一些数据......出于某种原因,每当我尝试打开我的文本文件时它都会给我错误

import openpyxl
from openpyxl import*

path = "students.xlsx"

打开工作簿

wb = openpyxl.load_workbook(path)

获取工作簿活动表对象

sheet = wb.active

稍后追加的数据

data = (
    (1, "john", 1/5/2022) 
    )

附加数据

sheet.append(data)

保存并关闭 xlsx 文件

wb.save("students.xlsx")
wb.close()

问题出在这里

with open("students.txt", "a") as f:
    f.write(data[0]+data[1] + data[2])

这是我的错误

Traceback (most recent call last):
  File "D:\taha\tools\attendance\quiz.py", line 32, in <module>
    with open("students.txt", "a") as f:
  File "C:\Users\FLH\AppData\Local\Programs\Python\Python310\lib\site-packages\openpyxl\reader\excel.py", line 315, in load_workbook
    reader = ExcelReader(filename, read_only, keep_vba,
  File "C:\Users\FLH\AppData\Local\Programs\Python\Python310\lib\site-packages\openpyxl\reader\excel.py", line 124, in __init__
    self.archive = _validate_archive(fn)
  File "C:\Users\FLH\AppData\Local\Programs\Python\Python310\lib\site-packages\openpyxl\reader\excel.py", line 94, in _validate_archive
    raise InvalidFileException(msg)
openpyxl.utils.exceptions.InvalidFileException: openpyxl does not support .txt file format, please check you can open it with Excel first. Supported formats are: .xlsx,.xlsm,.xltx,.xltm
python excel openpyxl
2个回答
0
投票

在快速视图中,您将数据定义为一个元组,其中包含一个具有三个元素的元组。

解决的第一步应该使用列表而不是元组的元组:

data = [1, "john", 1/5/2022]

你能试试这个吗,如果它解决了或者你需要更多帮助,请告诉我。

说“谢谢”是值得赞赏的,但它并没有回答问题。相反,为最能帮助您的答案投票!如果这些答案对您有帮助,请考虑以更有建设性的方式表示感谢——对您的同行在这里提出的问题提供您自己的答案。


0
投票

出现同样的错误

在这种情况下,我使用了导入:

from openpyxl import load_workbook
© www.soinside.com 2019 - 2024. All rights reserved.