目录

Python 日期


Python 日期

Python 中的日期本身并不是一种数据类型,但我们可以导入一个名为datetime将日期用作日期对象。

示例

导入datetime模块并显示当前日期:

import datetime

x = datetime.datetime.now()
print(x)
亲自试一试 »

日期输出

当我们执行上面示例中的代码时,结果将是:

日期包含年、月、日、时、分、秒、微秒。

这个datetime模块有许多方法来返回有关日期对象的信息。

以下是一些示例,您将在本章后面了解更多信息:

示例

返回年份和星期几的名称:

import datetime

x = datetime.datetime.now()

print(x.year)
print(x.strftime("%A"))
亲自试一试 »

创建日期对象

要创建日期,我们可以使用datetime()的类(构造函数)datetime模块。

这个datetime()类需要三个参数来创建日期:年、月、日。

示例

创建日期对象:

import datetime

x = datetime.datetime(2020, 5, 17)

print(x)
亲自试一试 »

这个datetime()类还接受时间和时区参数(小时、分钟、秒、微秒、tzone),但它们是可选的,并且有一个默认值0, (None对于时区)。



strftime() 方法

这个datetimeobject 有一个将日期对象格式化为可读字符串的方法。

该方法称为strftime(),并采用一个参数,format,指定返回字符串的格式:

示例

显示月份名称:

import datetime

x = datetime.datetime(2018, 6, 1)

print(x.strftime("%B"))
亲自试一试 »

所有合法格式代码的参考:

Directive Description Example 尝试一下
%a Weekday, short version Wed 尝试一下 »
%A Weekday, full version Wednesday 尝试一下 »
%w Weekday as a number 0-6, 0 is Sunday 3 尝试一下 »
%d Day of month 01-31 31 尝试一下 »
%b Month name, short version Dec 尝试一下 »
%B Month name, full version December 尝试一下 »
%m Month as a number 01-12 12 尝试一下 »
%y Year, short version, without century 18 尝试一下 »
%Y Year, full version 2018 尝试一下 »
%H Hour 00-23 17 尝试一下 »
%I Hour 00-12 05 尝试一下 »
%p AM/PM PM 尝试一下 »
%M Minute 00-59 41 尝试一下 »
%S Second 00-59 08 尝试一下 »
%f Microsecond 000000-999999 548513 尝试一下 »
%z UTC offset +0100
%Z Timezone CST
%j Day number of year 001-366 365 尝试一下 »
%U Week number of year, Sunday as the first day of week, 00-53 52 尝试一下 »
%W Week number of year, Monday as the first day of week, 00-53 52 尝试一下 »
%c Local version of date and time Mon Dec 31 17:41:00 2018 尝试一下 »
%C Century 20 尝试一下 »
%x Local version of date 12/31/18 尝试一下 »
%X Local version of time 17:41:00 尝试一下 »
%% A % character % 尝试一下 »
%G ISO 8601 year 2018 尝试一下 »
%u ISO 8601 weekday (1-7) 1 尝试一下 »
%V ISO 8601 weeknumber (01-53) 01 尝试一下 »