亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

帶有日期時間對象的列表的最后一個元素

帶有日期時間對象的列表的最后一個元素

尚方寶劍之說 2023-08-08 16:48:01
我有 2 個日期時間對象的“范圍”,由開始日期和停止日期定義。我想創建一個新的“范圍”(開始和停止日期)來匹配前兩個范圍中的日期。這是我嘗試過的,但我的列表有問題:它似乎沒有正確獲取最后一個元素?import datetime#First date range is next week from monday to sunday:next_week_day = datetime.datetime.now().date() + datetime.timedelta(days=7)monday = next_week_day - datetime.timedelta(days=next_week_day.weekday())sunday = monday + datetime.timedelta(days=7)daterange = [monday + datetime.timedelta(days=x) for x in range(0, (sunday-monday).days)]  #Second daterange can be anything:start = datetime.date(2020, 8, 2)end = datetime.date(2020, 9, 25)daterange_2 = [start + datetime.timedelta(days=x) for x in range(0, (end-start).days)]  #then I create a list to add matching days to create the new rangedate_list = []for date in daterange:  for date_2 in daterange_2:    if date_2 == date:      date_list.append(date)#and retrieve first and last day in listfirst_date = date_list[0]second_date = date_list[-1]print(first_date, second_date)print(type(first_date), type(second_date))打印'2020, 9, 24'secondary_date 而不是'2020, 9, 25'. 我缺少什么?
查看完整描述

1 回答

?
慕容3067478

TA貢獻1773條經驗 獲得超3個贊

您需要更新兩者的范圍daterange并daterange_2包含所有必要的日期:


import datetime


# First date range is next week from monday to sunday:

next_week_day = datetime.datetime.now().date() + datetime.timedelta(days=7)

monday = next_week_day - datetime.timedelta(days=next_week_day.weekday())

sunday = monday + datetime.timedelta(days=7)


daterange = [monday + datetime.timedelta(days=x) for x in range(0, (sunday - monday).days + 1)]


# Second daterange can be anything:

start = datetime.date(2020, 8, 2)

end = datetime.date(2020, 9, 25)

daterange_2 = [start + datetime.timedelta(days=x) for x in range(0, (end - start).days + 1)]


# then I create a list to add matching days to create the new range

date_list = []

for date in daterange:

    for date_2 in daterange_2:

        if date_2 == date:

            date_list.append(date)


# and retrieve first and last day in list

first_date = date_list[0]

second_date = date_list[-1]


print(first_date, second_date)

print(type(first_date), type(second_date))


查看完整回答
反對 回復 2023-08-08
  • 1 回答
  • 0 關注
  • 136 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號