0

我想在每个 StartDate:StartTime 和 EndDate:EndTime 之间生成一个时间戳。

StartDate 2019-01-01 ,StartTime 01:00:00 --- only appear hour (2019-01-01 ,01)
 
EndDate 2019-01-11 ,EndTime 1:00:00.---only appear hour (2019-01-11 ,01)

并在表格的一列中显示日期和时间

4

2 回答 2

1
from datetime import datetime, timezone, timedelta
import pandas as pd
def generate_date_list(from_date, to_date):
    list_of_dates = []
    start = datetime.strptime(from_date, '%Y-%m-%d')
    end = datetime.strptime(to_date, '%Y-%m-%d')
    step = timedelta(days=1)
    while start <= end:
        list_of_dates.append(start.date())
        start += step
    
    dt = [i.strftime("%Y-%m-%d %H:%M:%S") for i in list_of_dates]
    return {"Date_Time": dt}

date_time_list = generate_date_list("2019-01-01", "2019-01-11")
df = pd.DataFrame(date_time_list)

print(df)

#You can use df.to_sql() to insert on table.
于 2021-02-18T09:28:18.933 回答
1

您可以尝试使用 pandas date_range 函数

import pandas as pd
dates = pd.date_range(start='2009-01-01 01:00:00', end='2009-01-11 00:00:00',freq='H')
for date in dates:
    print(date)

这将打印开始时间和结束时间之间的所有日期时间

于 2021-02-18T09:47:05.997 回答