上下文:我正在尝试自动化一个相当复杂的报告(不是概念上的,只是要跟踪的事情的绝对数量)。经过大量调查,我确定的方法是;
显然,我花了很多时间查看其他人对这个问题的解决方案(因为这个话题已经讨论了很多)。然而,我发现的问题是(至少在我的搜索中)没有一种方法对我有用,我相信以前正确的响应在当前版本的熊猫等中不再相关。而不是链接到几十个在试图回答这个问题的文章中,我将解释我在各种解决方案中遇到的问题。
以下是经过大量编辑的代码版本,应提供所有必需的详细信息。
#Imports
import os
import pyodbc
import numpy as np
import shutil
import pandas as pd
import datetime
from datetime import date
from openpyxl import load_workbook
# Set database connection variables.
cnxn = pyodbc.connect(*Credentials*)
cursor = cnxn.cursor()
df = pd.read_sql_query(script, cnxn)
df.to_excel(writer, sheet_name = 'Some Sheet',index=False)
writer.close()
长话短说,我觉得非常令人沮丧的是,原本应该非常非常简单的事情变成了为期多天的练习。如果有人有这方面的经验并能提供一些见解,我将不胜感激。
最后,我不得不承认,我对使用 python 还是很陌生,尽管直到今天我才发现过渡太困难。我遇到的大多数问题都很容易解决(对我来说),除了这个问题。如果有什么我完全错过了,把我放在赛道上,我就不会打扰了。
答案 0 :(得分:0)
好的,所以我发现我实际上是不正确的(大惊喜)。也就是说,我说辅助函数不起作用。它确实有效,ZipFile 问题很可能是由工作簿上的某种形式的保护引起的。有趣的是,我能够让它与新工作簿一起工作,但是当我更改新工作簿的名称时,它再次开始抛出 ZipFile 错误。在创建新文件并尝试不同的事情一段时间后,我终于让它工作了。
关于辅助函数我要注意两件事;
希望这可以帮助任何遇到相同问题的人。
经验教训,信息总是在那里,只是实际密切关注并尝试解决问题,而不是复制粘贴并在事情不起作用时挠头。