python3什么时候出的_[快学Python3]日期和时间处理

本文介绍Python中date、time、datetime类的基本使用方法,包括日期时间的获取、构造及格式化等,并通过实例演示如何进行常见操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

概述

在python中, date、time、datetime类提供了一系列处理日期、时间和时间间隔的函数。

在Python里我们大致可以把其实现日期时间类分为5个:

date

仅用于日期处理(年、月、日)

time

仅用于时间处理(时、分、秒、毫秒)

datetime

可以处理日期和时间的组合(年、月、日、时、分、秒、毫秒)

timedelta

日期时间处理,可以用于时间差运算等

tzinfo

用于时区处理

下面我们一起看几个实例来看看上述几个类的应用,在本文中不会列举所有的应用方法。

基础实例

直接上代码,一起来看看日期和时间的一些基础处理技巧:

# -*- coding:utf-8 -*-

__author__ = '苦叶子'

# 导入日期和时间

from datetime import date

from datetime import time

from datetime import datetime

if __name__ == "__main__":

# 获取下今天的的日期

today = date.today()

print("今天是 %s" % today)

# 把今天的日期年月日分开,重新格式化下一下

print("今天是 %s %s %s" % (today.day, today.month, today.year))

# 看下今天是星期几

# 星期几 序号

# Monday 0

# Tuesday 1

# Wednesday 2

# Thursday 3

# Friday 4

# Saturday 5

# Sunday 6

# weekday会获取到对应的序号,请根据序号对上上述表,来看是星期几

weekday_num = today.weekday()

print("今天weekday是 %s" % weekday_num)

# 输出可读性更好的星期几

weekdays = ("Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday")

print("今天是 %s" % weekdays[weekday_num])

print("-" * 30)

# 看看现在的时间

today_now = datetime.now()

print("现在是 %s" % today_now)

# 用time来构造个时间出来

t = time(hour=12, minute=20, second=30, microsecond=200)

print("我们自己造的时间是 %s" % t)

# 再造个日期时间出来试试

d = datetime(year=2008, month=8, day=8, hour=8, minute=8, second=8)

print("我们自己造是日期时间 %s" % d)

格式化日期时间:strftime函数

大家是不是在各种网站、系统上见过不同格式的日期时间显示?那接下来我们也来做做日期时间的格式化。

我们需要用到strftime函数,先看一下可用于格式化日期时间的符号:

%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)

%a 简写的星期名称

%A 完整星期名称

%b 简写的月份名称

%B 完整的月份名称

%c 相应的日期表示和时间表示

%j 年内的一天(001-366)

%p A.M.或P.M.的等价符

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

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

%W 一年中的星期数(00-53)星期一为星期的开始

%x 相应的日期表示

%X 相应的时间表示

%z 当前时区的名称

%% %号本身

下面看看怎么把strftime和上述格式化符号结合应用:

# -*- coding:utf-8 -*-

__author__ = '苦叶子'

import time

if __name__ == "__main__":

# time.strftime(format[, t])

# 先看下当前默认格式化的时间

localtime = time.asctime(time.localtime())

print("当前默认日期时间格式: %s" % localtime)

# 格式化为: 年-月-日 时:分:秒 星期几

print("24小时制全格式:", time.strftime("%Y-%m-%d %H:%M:%S %A", time.localtime()))

print("12小时制缩写格式:", time.strftime("%Y-%m-%d %I:%M:%S %a", time.localtime()))

# 带a.m. 或 p.m. 标识时间格式 %p

print("带a.m或p.m 24小时制全格式:", time.strftime("%Y-%m-%d %H:%M:%S %p %A", time.localtime()))

# 把时区也带上看看 %z

print("带时区的全格式:", time.strftime("%Y-%m-%d %H:%M:%S %p %A %z", time.localtime()))

# 格式乱排下试试

print("随意排格式:", time.strftime("%A %Y-%d-%m %p %H:%M:%S %z", time.localtime()))

时间的格式化不需要太多的技巧,把上述的格式化符号熟练运用就好,多练练就好了。不过关于日期时间的模块所提供的功能,这里仅仅展示了最简单的,更强大的功能,强去查看datetime、time相关的官网文档,以更深入掌握。

尤其是对datetime和time模块的掌握很重要!!!

对于timedelta和tzinfo大家自行看官方资料学习。3日

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值