У меня есть следующий список словарей. Я хотел получить выход, основанный на начале и закрытии. Если два или более дней имеют одинаковые тайминги, их следует объединить и отобразить, как показано на выходе.Как сопоставить элементы словарей для данного Python Список словарей?
timings = [
{'day': 'Monday', 'start': '8:00 am', 'close': '5:00 pm'},
{'day': 'Tuesday', 'start': '7:00 am', 'close': '4:00 pm'},
{'day': 'Wednesday', 'start': '7:00 am', 'close': '4:00 pm'},
{'day': 'Thursday', 'start': '8:00 am', 'close': '5:00 pm'},
{'day': 'Friday', 'start': '9:00 am', 'close': '4:00 pm'},
{'day': 'Saturday', 'start': '9:00 am', 'close': '4:00 pm'},
{'day': 'Sunday', 'start': '8:00 am', 'close': '5:00 pm'}
]
Выход:
Monday - 8:00 am - 5:00 pm
Tuesday-Wednesday - 7:00 am - 4:00 pm
Thursday - 8:00 am - 5:00 pm
Friday-Saturday - 9:00 am - 4:00 pm
Sunday - 8:00 am - 5:00 pm
Это будет раздражающе трудно, используя струны ... наверное намного проще, если вы используете объекты datetime. –
@AChampion да, конечно, но у вас все еще есть время, как строки. –
@ juanpa.arrivillaga не уверен, что я вижу, что в качестве проблемы для сравнения будет достаточно сравнения строк '' 9:00 am '==' 9:00 am '-> True' – AChampion