背景:
1、使用Python执行SQL并使用Pandas将输出结果保存为DataFrame格式。
2,将输出作为一个新工作表附加到我现有的 excel 文件中。
下面是我的代码:
from pandas import ExcelWriter
sql_20 = ''''''
db = cx_Oracle.connect('*****', '*******', '**********')
conn = db.cursor()
conn.execute(sql_20)
df = pandas.read_sql_query(sql_20,db)
print(df)
with ExcelWriter('GUCS6J-Job Data.xlsx', mode='a') as writer:
df.to_excel(writer, sheet_name=str(20))
writer.save()
数据库:甲骨文
A列数据类型:日期
Oracle 的 SQL 结果:
来自 Python 的 DataFrame 打印:
到目前为止一切顺利
但我在 excel 工作表中得到的是:
我很好奇为什么我得到'##################' 并且这个单元格的值在excel 中是-693594。
希望能得到和excel文件中DataFrame打印一样的结果。
最佳答案
请引用这两个链接看是否能解决您的问题 https://xlsxwriter.readthedocs.io/example_pandas_datetime.html Python pandas dataframe "Date" Index different format in xlsx and csv
我认为您需要在 ExcelWriter() 中添加 date_format
关于python - 无法使用 Pandas 写入具有有效日期格式的 Excel 工作表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58634261/