datetime 对象让我们在 Python 中处理日期和时间。但是当我们使用这个对象时,返回的值是 datatime 的数据类型,而不是 string。
下面是一个将当前的年、月、日和时间打印到控制台的例子:
from datetime import datetime
current_day = datetime.now()
print(current_day)
# 2022-04-18 21:50:24.524022
print(type(current_day))
# <class 'datetime.datetime'>
在上面的代码中,我们首先导入了 datetime 对象。datetime.now() 给我们提供了关于当前日期的所有信息,我们将其存储在一个名为 current_day 的变量中。
当我们打印 current_day 时,我们得到了这个结果:2022-04-18 21:50:24.524022。这向我们显示了年、月、日和时间。而当我们把类型打印到控制台时,我们得到了 datetime。
在这篇文章中,我们将讨论由 datetime 对象提供的 strftime() 方法。这个方法让我们把 Python 中的日期和时间对象转换成它们的 string 格式。
Python 中的Strptime有什么用
strftime() 方法接受一个参数(一个格式代码),指定我们要返回的内容。
例如:
from datetime import datetime
current_day = datetime.now()
year = current_day.strftime("%Y")
print("current year:", year)
# current year: 2022
print(type(year))
# <class 'str'>
上面的代码与上一个例子类似,只是我们创建了一个名为 year 的新变量。在这个变量中,我们将 strftime() 方法附加到当前年份:current_day.strftime("%Y")。
你会注意到,我们给这个方法传入了一个参数--"%Y"--表示年份。这就是所谓的格式代码。在下一个例子中,我们将看到其他格式代码。
使用 strftime() 方法后,现在可以看到数据类型是一个 string。
这是另一个例子:
from datetime import datetime
current_day = datetime.now()
year = current_day.strftime("%Y")
print("current year:", year)
# current year: 2022
month = current_day.strftime("%B")
print("current month:", month)
# current month: April
day = current_day.strftime("%A")
print("current day:", day)
# current day: Monday
time = current_day.strftime("%-I %p")
print("current time:", time)
# current time: 9 PM
在上面的例子中,我们在 strftime() 方法中传递了不同的格式代码,以返回 month、day 和 time 变量的 string 值。
这些并不是唯一存在的格式代码。点击这里可以看到更多的格式代码,你可以试一试,看看它们的作用。
总结
在这篇文章中,我们谈到了 strftime() 方法,它帮助我们将日期和时间对象转换为 strings。
我们看到了各种格式代码,可以作为参数传入,以返回不同的日期和时间对象值。
祝你编程愉快!