Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Python从datetime列表中获取相同的日期小时或分钟?_Python_Algorithm_Datetime - Fatal编程技术网

如何使用Python从datetime列表中获取相同的日期小时或分钟?

如何使用Python从datetime列表中获取相同的日期小时或分钟?,python,algorithm,datetime,Python,Algorithm,Datetime,我有一个时间列表,我需要得到列表中所有具有相同小时、分钟或秒的元素,并将它们形成新的列表 例如: 名单 出去 您的问题是“如何将字符串转换为日期时间值”、“如何从日期时间中获取小时或分钟”以及“如何将列表分组为多个列表”的组合 ['10:20:01', '10:20:02', '10:21:00', '10:21:01', '10:22:00', '10:22:01'] ['10:20:01', '10:20:02'] ['10:21:00', '10:21:01'] ['10:22:00',

我有一个时间列表,我需要得到列表中所有具有相同小时、分钟或秒的元素,并将它们形成新的列表

例如: 名单

出去


您的问题是“如何将字符串转换为日期时间值”、“如何从日期时间中获取小时或分钟”以及“如何将列表分组为多个列表”的组合
['10:20:01', '10:20:02', '10:21:00', '10:21:01', '10:22:00', '10:22:01']
['10:20:01', '10:20:02']
['10:21:00', '10:21:01']
['10:22:00', '10:22:01']
from datetime import datetime
from collections import defaultdict
q = ['10:20:01', '10:20:02', '10:21:00', '10:21:01', '10:22:00', '10:22:01']
t = []
for i in q:    
    w = (datetime.strptime(i,"%H:%M:%S").time()) # Converting str to time
    t.append((w.hour,w.minute)) # Storing only hours and minutes
buckets = defaultdict(list)
for tup in t:
    buckets[tup].append(tup) # Check time and append to coressponding dict key(Hour,minute)
buckets = list(buckets.values())