Как узнать текущее время по часам Оли?

Как реализовать вывод времени для Оли в соответствии с временной зоной указанной в словаре friends?
  • 13 октября 2023 г. 18:28
Ответы на вопрос 2
Для узнавания текущего времени по часам Оли, нужно получить текущее время для заданной временной зоны. 

В Python для работы с временем и временными зонами можно использовать модуль datetime. Предполагая, что временная зона Оли указана в словаре friends, можно извлечь ее значение и использовать для создания объекта datetime в этой временной зоне:

```python
import datetime
import pytz

friends = {
    'Оля': 'Europe/Moscow',
    # Другие друзья и их временные зоны ...
}

timezone = pytz.timezone(friends['Оля'])
current_time = datetime.datetime.now(timezone)

print("Текущее время для Оли:", current_time)
```

В этом примере используется pytz (third-party модуль), чтобы получить нужную временную зону из строки (например, 'Europe/Moscow'). После этого объект datetime создается с помощью текущего времени в указанной временной зоне.

Результатом будет вывод текущего времени по часам Оли.
import datetime

# Совет 1
# Используйте модуль datetime для работы с датой и временем.


utc_delta = {
    'Москва': 3,
    'Питер': 3,
    'Самара': 4,
    'Новосибирск': 7,
    'Омск': 6,
    'Пермь': 5
}

friends = {
    'Максим': 'Омск',
    'Олег': 'Питер',
    'Оля': 'Москва',
    'Коля': 'Пермь',
    'Ваня': 'Новосибирск',
    'Толя': 'Самара'
}


# Совет 2
# Создайте функцию, которая принимает имя друга и возвращает текущее время у этого друга.

def time_friends(name: str):
    return datetime.datetime.utcnow() + datetime.timedelta(hours=utc_delta[friends[name]])

# Совет 3
# Используйте функцию time_friends для получения текущего времени у друга с именем 'Оля'.

current_time = time_friends('Оля')

# Совет 4
# Выведите текущее время у друга 'Оля'.

print(current_time)
Похожие вопросы