在Python中更改时间格式

时间:2018-02-17 16:21:01

标签: python datetime

我有这种格式的DateTime字符串" 2018-02-08T23:59:05.823Z"我知道' T'将日期与时间分开,我已将字符串拆分为' T'分隔符,我有时间 - > ' 23:59:05.823Z'

我想转换这段时间' 23:59:05.823Z'这种格式就像上午10点00分

我们怎么能在python中做到这一点?

2 个答案:

答案 0 :(得分:1)

如果您使用的是Python日期时间模块,则可以使用.strftime()方法将日期时间转换为所需格式的字符串。例如:

from datetime import datetime

current_datetime = datetime.now()

print(current_datetime)
>>> 2018-02-17 09:23:31.079326

print(current_datetime.strftime("%I:%M %p")
>>> 09:23 AM

%I为您提供12小时制的小时作为零填充数字,%M为您提供零填充数字的分钟,%p为您提供AM还是PM。您可以在官方文档中了解更多相关信息:https://docs.python.org/3/library/datetime.html#strftime-and-strptime-behavior

答案 1 :(得分:0)

  

我想转换这段时间' 23:59:05.823Z'这种格式就像' 10:00   AM'

看起来您正在使用ISO日期时间格式。你可以这样做。

class DormsDetailView(LoginRequiredMixin, generic.DetailView):
    model = Dorm

    def get_context_data(self, *args, **kwargs):
        context = super().get_context_data(*args, **kwargs)
        context['room_numbers'] = self.object.dormroom_set.values_list('room_number', flat=True)
        return context