提取出含datetime列表的datetime元组的字典中,每年8、9、10月的数据
时间: 2024-06-12 11:04:58 浏览: 97
假设datetime列表是元组中的第一个元素,可以使用如下代码实现:
```python
from datetime import datetime
# 示例字典
data = {
(datetime(2020, 7, 1), 'data1'): 10,
(datetime(2020, 9, 1), 'data2'): 20,
(datetime(2021, 8, 1), 'data3'): 30,
(datetime(2021, 10, 1), 'data4'): 40,
(datetime(2022, 9, 1), 'data5'): 50,
}
# 提取每年8、9、10月的数据
result = {}
for key, value in data.items():
if key[0].month in (8, 9, 10):
year = key[0].year
if year not in result:
result[year] = []
result[year].append((key[0], key[1], value))
print(result)
# 输出:{2020: [(datetime.datetime(2020, 9, 1, 0, 0), 'data2', 20)],
# 2021: [(datetime.datetime(2021, 8, 1, 0, 0), 'data3', 30),
# (datetime.datetime(2021, 10, 1, 0, 0), 'data4', 40)],
# 2022: [(datetime.datetime(2022, 9, 1, 0, 0), 'data5', 50)]}
```
结果是一个字典,键是年份,值是一个列表,列表中的每个元素是一个元组,包含了原来的元组的所有元素,并且第一个元素是符合要求的datetime对象。
阅读全文