python-3.x 如何将pywintypes.datetime转换为不同格式

qgelzfjb  于 2023-02-01  发布在  Python
关注(0)|答案(3)|浏览(240)

我有一个对象x,如下所示

x = '2020-06-15 00:00:00+00:00'

print(x)
2020-06-15 00:00:00+00:00
print(type(x))
<class 'pywintypes.datetime'>

我想将上述对象转换为2020-06-15,也转换为Year-Quarter format,即2020 Q2
有没有办法做到这一点?

nkoocmlb

nkoocmlb1#

也许这个能帮你...

from math import ceil
x = '2020-06-15 00:00:00+00:00'
date, time = x.split()
yy, mm, dd = date.split('-')

print(f'{yy} - Q{ceil(int(mm)/3)}')
mklgxw1f

mklgxw1f2#

您可以使用datetime的方法。datetime类可以使用这些方法,因此您可以使用.year和.month属性。例如:

import math
# --- Windows-specific! ---
import pywintypes
import win32timezone

t = pywintypes.Time(1592179200).astimezone(win32timezone.TimeZoneInfo('UTC'))

print(t)
# 2020-06-15 00:00:00+00:00

print(f'{t.year}-Q{math.ceil(int(t.month)/3)}')
# 2020-Q2
jdgnovmf

jdgnovmf3#

2023年1月30日更新
下面的代码将帮助您将给定时间转换为所需时间

import datetime as dt

_datetime_str = '2020-06-15 00:00:00+00:00'
_splitted_datetime_str = x.split("+")
# output: ['2020-06-15 00:00:00', '00:00']

_datetime = dt.strptime(_splitted_datetime_str[0], "%Y-%m-%d %H:%M:%S")
# output datetime.datetime(2020, 06,15, 00, 00, 00)

相关问题