簡體   English   中英

如何根據密鑰結尾的內容拆分 dict

[英]How can I split dict based on what the key ends with

我正在嘗試拆分此 data_dict

 Timestamp('2022-09-18 06:00:00'): [5.4, 6.0, 6.5, 6.7, 6.9, 7.9, 8.5,7.5, 7.9, 7.8, 7.6, 6.8],
 Timestamp('2022-09-18 18:00:00'): [6.4, 5.7, 4.8, 5.4, 4.7, 4.3],
 Timestamp('2022-09-19 06:00:00'): [3.8],
 Timestamp('2022-09-19 00:00:00'): [4.1, 4.4, 4.3, 3.8, 3.5, 2.8]}

我試圖根據密鑰是否以 06:00:00 結尾將其拆分為 2 個不同的字典,我編寫了以下代碼:

def split_morning_night(data_dict):
    mornings = {}
    nights = {} 
    for date, value in data_dict.items():
        if date.endswith("06:00:00"):
            mornings[date] = value
        else:
            nights[date] = value
    return mornings, nights

但是我在運行時遇到以下錯誤

AttributeError: 'Timestamp' object has no attribute 'endswith'

有沒有其他方法可以解決這個問題? 所有幫助表示贊賞

您在 split_morning_night() 方法中使用帶有時間戳的字符串方法。 首先對它進行類型轉換然后使用它,就像這樣。

if str(date).endswith("06:00:00"):
    mornings[date] = value
else:
    nights[date] = value

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM