Как перебрать два списка, которые являются значениями словаря параллельно? - PullRequest
0 голосов
/ 08 апреля 2019

Мне нужна помощь для перебора столбца словаря данных с именами 'TimeO' и 'TimeC' в этой функции.

Data_Dict = {'TimeO': ['9:00:00', '10:00:00'] 'TimeC': ['14:00:00', '16:00:00']}

x должны быть значениями от TimeO и y должны быть значениями от TimeC.

Я не могу понять, как перебирать значения

def timed_duration():
        opening = datetime.strptime(x, '%H:%M:%S')
        closing = datetime.strptime(y, '%H:%M:%S')
        sec =(closing-opening).total_seconds()
        hour = sec/3600
        return(hour)
timed_duration()

x и y следует перебрать 400 записей, но я не знаю, что делать

1 Ответ

0 голосов
/ 08 апреля 2019

Учитывая, что ваши данные выглядят так:

Data_Dict = {'TimeO': ['9:00:00', '10:00:00'], 'TimeC': ['14:00:00', '16:00:00']}

def timed_duration(data_dict):
    hours = []  # create an empty list to store all the results
    for x, y in zip(data_dict['TimeO'], data_dict['TimeC']):
        opening = datetime.strptime(x, '%H:%M:%S')
        closing = datetime.strptime(y, '%H:%M:%S')
        sec =(closing-opening).total_seconds()
        hour = sec/3600
        hours.append(hour)
    return hours  # no parenthesis in return

timed_duration(Data_Dict)

Это создаст список с именем hours, заполненный результатами вашей функции.zip() позволяет вам выполнять итерации по обоим объектам одновременно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...