📜  python datetime no毫秒 - Python(1)

📅  最后修改于: 2023-12-03 15:18:54.602000             🧑  作者: Mango

Python Datetime 格式中去除毫秒

在Python中,使用datetime模块来处理日期和时间,其中日期和时间可以表示成多种格式,包括毫秒。但有时候,我们需要从一个带毫秒的日期时间格式中去除毫秒部分。本文将介绍如何实现这个目标。

方法一:使用strftime()来格式化输出

strftime()datetime模块中一个非常有用的方法,用于将日期时间对象转换为一个字符串。使用该方法,我们可以将带毫秒的日期时间字符串格式化为没有毫秒的字符串。

import datetime

# 带毫秒的日期时间字符串
dt_str = '2021-12-21 15:30:45.999'

# 将字符串转换成datetime对象
dt_obj = datetime.datetime.strptime(dt_str, '%Y-%m-%d %H:%M:%S.%f')

# 去除毫秒部分并输出
dt_without_ms_str = dt_obj.strftime('%Y-%m-%d %H:%M:%S')
print(dt_without_ms_str)  # 输出:2021-12-21 15:30:45

在上面的例子中,我们首先将带毫秒的日期时间字符串转换成一个datetime对象,然后使用strftime()方法将其格式化为没有毫秒的字符串,最后输出结果。

方法二:使用replace()方法删除毫秒部分

Python的日期时间对象提供了一个replace()方法,可以修改日期时间的各个部分。如果你只想删除日期时间中的毫秒部分,可以使用这个方法来实现。

import datetime

# 带毫秒的日期时间对象
dt_obj = datetime.datetime.now()

# 删除毫秒部分并输出
dt_obj_without_ms = dt_obj.replace(microsecond=0)
print(dt_obj_without_ms)  # 输出不带毫秒的日期时间对象

在上面的例子中,我们首先获得当前日期时间的对象,然后使用replace()方法删除了其中的毫秒部分。

以上两种方法都可以帮助我们从日期时间格式中去除毫秒部分。具体使用哪种方法,取决于你的具体需求。如果只是要输出一个字符串,那么使用strftime()方法会更加简单明了;如果需要对这个日期时间对象进行后续操作,那么使用replace()方法可能更加方便。