一文了解 Python 中的 datetime 的基本操作

2023-10-21 05:06:28 字數 4531 閱讀 1704

python 中有一个名为 datetime 的内置模块,可以以多种方式处理日期和时间。在本文中,我们将介绍 python 中的基本 datetime 操作。

使用 date() 生成日期对象,表示具有年、月和日的日期。

「语法格式:」

datetime.date( year, month, day)

strftime 方法以各种格式打印日、月和年。

from datetime import date

# 创建日期对象。

current = date.today()

# 输出当前年、月、日。

print("当前日:",current.day)

print("当前月份:",current.month)

print("当前年份:",current.year)

# 以不同格式输出日期。

format1 = current.strftime("%m/%d/%y")

print("格式1:",format1)

format2 = current.strftime("%b-%d-%y")

print("格式2:",format2)

format3 = current.strftime("%d/%m/%y")

print("格式3:",format3)

format4 = current.strftime("%b %d, %y")

print("格式4:",format4)

输出:

当前日: 20

当前月份: 10

当前年份: 2023

格式1: 10/20/23

格式2: oct-20-2023

格式3: 20/10/2023

格式4: october 20, 2023

「时间日期格式化符号:」

%y 两位数的年份表示(00-99)

y 四位数的年份表示(000-9999)

m 月份(01-12)

d 月内中的一天(0-31)

h 24小时制小时数(0-23)

i 12小时制小时数(01-12)

m 分钟数(00=59)

s 秒(00-59)

j 年内的一天(001-366)

p 本地a.m.或p.m.的等价符。

u 一年中的星期数(00-53)星期天为星期的开始。

w 星期(0-6),星期天为星期的开始。

w 一年中的星期数(00-53)星期一为星期的开始。

f 微秒,以6位数字表示(000001)

x 本地相应的日期表示。

x 本地相应的时间表示。

z 当前时区的名称。

z utc 偏移量。

a 本地简化星期名称。

a 本地完整星期名称。

b 本地简化的月份名称。

b 本地完整的月份名称。

c 本地相应的日期表示和时间表示。

号本身。

使用 time() 生成的时间对象,表示本地时间。

「语法格式:」

datetime.time(hour, minute, second, microsecond)

from datetime import time

# 创建时间对象。

defaulttime = time()

print("默认小时:",defaulttime.hour)

print("默认分钟:",defaulttime.minute)

print("默认秒:",defaulttime.second)

print("默认毫秒:",defaulttime.microsecond)

# 设置参数。

time= time(hour=10, minute= 5, second=25, microsecond=55)

print("time:",time)

输出:

默认小时: 0

默认分钟: 0

默认秒: 0

默认毫秒: 0

time: 10:05:25.000055

datetime.datetime() 显示日期和时间的组合。

from datetime import datetime

# 创建对象。

current = datetime.now()

print(current)

print("日:",current.day)

print("月:",current.month)

print("年:",current.year)

print("时:",current.hour)

print("分:",current.minute)

print("秒:",current.second)

print("时间戳:",current.timestamp())

time = current.strftime("%h:%m:%s")

print("当前时间:",time)

输出:

日: 20月: 10

年: 2023

时: 18分: 0

秒: 47时间戳: 1697796047.202527

当前时间: 18:00:47

datetime.timedelta() 返回一个时间,该时间表示两个日期、时间之间的差异。

from datetime import timedelta, datetime

date_time = datetime.now()

print("当前日期时间:",date_time)

ten_days_after= date_time + timedelta(days = 10)

print('10天之后的日期时间:',ten_days_after)

ten_days_before= date_time - timedelta(days = 10)

print('10天之前的日期时间:',ten_days_before)

one_year_before_today= date_time + timedelta(days = 365)

print('一年后的日期时间:',one_year_before_today)

one_year_after_today= date_time - timedelta(days = 365)

print('一年前的日期时间:',one_year_after_today)

time_after_one_min = date_time + timedelta(seconds=10) *6

print('一分钟之后的日期时间:',time_after_one_min)

# 正数时间差相当于timedelta(days=999999999, hours=23, minutes=59, seconds=59, microseconds=999999)

print("正数时间差 : timedelta.max)

# 负数时间差相当于timedelta(-999999999)

print("负数时间差:",timedelta.min)

# 两个时间的最小差值相当于timedelta(microseconds=1)。

print("最小差值:",timedelta.resolution)

print('一年的秒数:',timedelta(days = 365).total_seconds())

输出:

当前日期时间: 2023-10-20 18:42:04.593126

10天之后的日期时间: 2023-10-30 18:42:04.593126

10天之前的日期时间: 2023-10-10 18:42:04.593126

一年后的日期时间: 2024-10-19 18:42:04.593126

一年前的日期时间: 2022-10-20 18:42:04.593126

一分钟之后的日期时间: 2023-10-20 18:43:04.593126

正数时间差 : 999999999 days, 23:59:59.999999

负数时间差: -999999999 days, 0:00:00

最小差值: 0:00:00.000001

一年的秒数: 31536000.0

❝文章创作不易,如果您喜欢这篇文章,请关注、点赞并分享给朋友。如有意见和建议,请在评论中反馈!

一文了解Clean Price

what is the clean price?什么是净价?the clean price is the price of a coupon bond not including accrued interest payments.the clean price is typically the q...

一文了解文档型数据库的构成要素和未来发展趋势

文档型数据库因其对半结构化数据的出色处理和强大的灵活性而受到众多企业的青睐。mongodb和巨杉数据库sequoiadb作为此领域的两大巨头,已经成功地把这种灵活性转化为了实际的业务价值。下面,我们将一一详细解析这两大平台下文档型数据库的核心组成部分及其优势,带领大家解锁为何文档型数据库越来越受欢迎...

一文说清生育险的一定要了解的那些事

生育险是五险其中一险,由并且只能由用人单位缴纳,灵活就业人员是无法参加生育险的。目前生育险已并入医疗保险体系,由职工基本医疗保险 进行征缴和管理。但是相对于医保,很多人对生育保险的了解却不多,对生育保险的理解存在一定的误区。今天卡卡君就来和大家说说生育保险常见的大误区,避免准妈妈们吃亏!这种理解其实...