Python 将Google工作表日期序列值转换为人类可读的日期

Python 将Google工作表日期序列值转换为人类可读的日期,python,date,google-sheets,date-conversion,Python,Date,Google Sheets,Date Conversion,设置 我正在通过GoogleDriveAPI阅读Python中的Google工作表 我有一个日期的值–一个日期序列值,我需要将其转换为人类可读的日期 我有: date = 42747 我知道这意味着日期是2017年12月1日 问题 是否有简单的方法将42747转换为12-1-2017 我看到了,但它没有回答我的问题。这会有用: import datetime def convert_xls_datetime(xls_date): return (datetime.datetime(1

设置

我正在通过GoogleDriveAPI阅读Python中的Google工作表

我有一个日期的值–一个日期序列值,我需要将其转换为人类可读的日期

我有:

date = 42747
我知道这意味着日期是2017年12月1日


问题

是否有简单的方法将
42747
转换为
12-1-2017

我看到了,但它没有回答我的问题。

这会有用:

import datetime
def convert_xls_datetime(xls_date):
    return (datetime.datetime(1899, 12, 30)
            + datetime.timedelta(days=xls_date))

print(convert_xls_datetime(42747))

这列出了
date
datetime
的单独函数

导入日期时间
从键入导入联合
_BASE_DATE=datetime.DATE(1899,12,30)
_BASE\u DATETIME=DATETIME.DATETIME(\u BASE\u DATE.year、\u BASE\u DATE.month、\u BASE\u DATE.day)
def convert_date_from_gsheet(num_days:int,/)->datetime.date:
#参考:https://stackoverflow.com/a/66738817/
断言isinstance(天数,整数)
返回_BASE_GSHEET_DATE+datetime.timedelta(num_days)
def将日期转换为表格(日期:datetime.date,/)->int:
#参考:https://stackoverflow.com/a/66738817/
断言isinstance(日期,datetime.date)
返回日期(日期-基本表日期)。天
def convert_datetime_from_gsheet(num_days:Union[float,int],/)->datetime.datetime:
#参考:https://stackoverflow.com/a/66738817/
断言isinstance(num_days,(float,int))
返回_BASE_GSHEET_DATETIME+DATETIME.timedelta(num_天)

不错!谢谢。它实际上给我提供了
2017-01-12 00:00:00
,有没有办法阻止它提供时间指示,即只提供
2017-01-12
convert\u xls\u datetime(42747)。date()
只提供日期。