@ivanburdin

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

Добрый день!
Кусок кода:
delta = 0
t = datetime.now() + timedelta(seconds=delta)
'%s+03:00' % t.strftime('%Y-%m-%dT%H:%M:%S.%f')[:-3]


Выдаст:
'2018-02-15T15:49:22.413+03:00'

это значение текущей даты.

Задался вопросом, а как получить значение даты и времени в текущий момент, но в какой-нибудь случайной временной зоне? +-12 часов
  • Вопрос задан
  • 53 просмотра
Решения вопроса 2
@YuriM1983
Фрилансер - веб-программист на питоне
Если грубо, то:
from random import randint
from datetime import datetime, timedelta
t = datetime.utcnow() + timedelta(hours=randint(-12, 12))
'%s+03:00' % t.strftime('%Y-%m-%dT%H:%M:%S.%f')[:-3]

Но по-хорошему надо использовать случайный выбор из временных зон. Ибо бывают зоны с разницей в 15/30 минут. Ещё зависит от необходимого распределения: многие зоны относятся к одному и тому же времени, некоторые зоны уникальны.
Ответ написан
import pytz

tz = pytz.timezone('Europe/Berlin')
berlin_now = datetime.now(tz)
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
chupasaurus
@chupasaurus
Сею рефлекторное, злое, временное
В datetime.timedelta есть параметры hours и minutes.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы
Popmechanic Москва
от 100 000 до 150 000 руб.
Panda Media Нижний Новгород
от 70 000 руб.
НЛ Континент Новосибирск
от 60 000 до 100 000 руб.
17 авг. 2018, в 17:10
15000 руб./за проект
17 авг. 2018, в 16:58
60000 руб./за проект
17 авг. 2018, в 16:55
10000 руб./за проект