Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/21: Рейтинг темы: голосов - 21, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 03.05.2020
Сообщений: 3

Как преобразовать локальное время в UTC?

17.05.2020, 21:54. Показов 4504. Ответов 1

Студворк — интернет-сервис помощи студентам
Как преобразовать локальное время в UTC?

Если использую такой вариант, то выдаёт неожиданный результат, не понимаю почему?
Python
1
2
3
4
from datetime import datetime, timezone, timedelta
import pytz 
 
print(datetime.strptime("05/08/2020 07:06AM", '%m/%d/%Y %H:%M%p').replace(tzinfo=pytz.timezone("America/Los_Angeles")).astimezone(tz=timezone.utc).isoformat())
Результат:
>>> 2020-05-08T14:59:00+00:00

А должно быть:
>>> 2020-05-08T14:06:00+00:00

Добавлено через 2 часа 4 минуты
Quote from the documentation of pytz:
Unfortunately, using the tzinfo argument of standard datetime constructors does not work with pytz for many time zones.

Solution:
Code
1
pytz.timezone("America/Los_Angeles").localize(datetime.strptime("05/08/2020 07:06AM", '%m/%d/%Y %H:%M%p')).astimezone(tz=timezone.utc).isoformat()
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
17.05.2020, 21:54
Ответы с готовыми решениями:

Преобразование времени из utc в локальное
Как сделать? Получаю атрибут ftCreationTime. Он в UTC. Нужно преобразовать в привычное для нас время! Помогите пожалуйста! Добавлено...

Преобразование текстового представления времени в формате UTC в локальное представление DateTime
Здравствуйте. Я в целом неплохо разбираюсь в классах DateTime и производных, но следующий случай поставил меня в тупик. Как...

Как преобразовать long в UTC?
Есть время UTC в long, к примеру 1526987355. Как это число преобразовать в DateTime? DateTime UtcDate = new DateTime(1526987355,...

1
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
17.05.2020, 22:49
Python
1
2
3
4
5
6
7
8
>>> import datetime
>>> datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
'2020-05-17 22:47:11'
>>> datetime.datetime.utcnow().strftime("%Y-%m-%d %H:%M:%S")
'2020-05-17 19:47:16'
>>> datetime.datetime.now(datetime.timezone.utc).strftime("%Y-%m-%d %H:%M:%S")
'2020-05-17 19:47:21'
>>>
Со стековерфлоу:

Here's a summary of common Python time conversions.

Some methods drop fractions of seconds, and are marked with (s). An explicit formula such as ts = (d - epoch) / unit can be used instead (thanks jfs).

Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
struct_time (UTC) → POSIX (s):
calendar.timegm(struct_time)
 
Naïve datetime (local) → POSIX (s):
calendar.timegm(stz.localize(dt, is_dst=None).utctimetuple())
(exception during DST transitions, see comment from jfs)
 
Naïve datetime (UTC) → POSIX (s):
calendar.timegm(dt.utctimetuple())
 
Aware datetime → POSIX (s):
calendar.timegm(dt.utctimetuple())
 
POSIX → struct_time (UTC, s):
time.gmtime(t)
(see comment from jfs)
 
Naïve datetime (local) → struct_time (UTC, s):
stz.localize(dt, is_dst=None).utctimetuple()
(exception during DST transitions, see comment from jfs)
 
Naïve datetime (UTC) → struct_time (UTC, s):
dt.utctimetuple()
 
Aware datetime → struct_time (UTC, s):
dt.utctimetuple()
 
POSIX → Naïve datetime (local):
datetime.fromtimestamp(t, None)
(may fail in certain conditions, see comment from jfs below)
 
struct_time (UTC) → Naïve datetime (local, s):
datetime.datetime(struct_time[:6], tzinfo=UTC).astimezone(tz).replace(tzinfo=None)
(can't represent leap seconds, see comment from jfs)
 
Naïve datetime (UTC) → Naïve datetime (local):
dt.replace(tzinfo=UTC).astimezone(tz).replace(tzinfo=None)
 
Aware datetime → Naïve datetime (local):
dt.astimezone(tz).replace(tzinfo=None)
 
POSIX → Naïve datetime (UTC):
datetime.utcfromtimestamp(t)
 
struct_time (UTC) → Naïve datetime (UTC, s):
datetime.datetime(*struct_time[:6])
(can't represent leap seconds, see comment from jfs)
 
Naïve datetime (local) → Naïve datetime (UTC):
stz.localize(dt, is_dst=None).astimezone(UTC).replace(tzinfo=None)
(exception during DST transitions, see comment from jfs)
 
Aware datetime → Naïve datetime (UTC):
dt.astimezone(UTC).replace(tzinfo=None)
 
POSIX → Aware datetime:
datetime.fromtimestamp(t, tz)
(may fail for non-pytz timezones)
 
struct_time (UTC) → Aware datetime (s):
datetime.datetime(struct_time[:6], tzinfo=UTC).astimezone(tz)
(can't represent leap seconds, see comment from jfs)
 
Naïve datetime (local) → Aware datetime:
stz.localize(dt, is_dst=None)
(exception during DST transitions, see comment from jfs)
 
Naïve datetime (UTC) → Aware datetime:
dt.replace(tzinfo=UTC)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
17.05.2020, 22:49
Помогаю со студенческими работами здесь

Как узнать точное время по UTC
Необходимо узнать точное время (с точностью до минуты) по UTC. Как? Сразу поясню - нужно именно точное время, а не время на машине...

Как узнать время UTC на локальном компютере
Доброго времени суток вопрос такой, как узнать время UTC? можно конечно попробовать через GetTimeZoneInformation узнать разницу ну и...

Как преобразовать строку с датой формата UTC в дату вида 17.07.2015 17:04:43?
У меня есть такая строка с датой: 2018-10-22T11:41:40 UTC Как ее преобразовать в такую строку: 22.10.2018 17:41:30? Добавлено через...

Как изменить UTC время на местное в DataFrame Python?
Помогите перевести UTC время, во время Екатеринбурга. Вот функция получения данных, которая выводит время в UTC. def...

Как получить время по Гринвичу (UTC) в SQL 7 ПОМОГИТЕ
Как получить время по Гринвичу (UTC) в SQL 7 ПОМОГИТЕ


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере нетипового документа выдачи шин для спецтехники с табличной частью, разработанного в конфигурации КА2. Номеклатура. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru