Python datatime库语法详解

简介: Python datatime库语法详解

Python中datetime库的用法


datetime模块用于是date和time模块的合集,datetime有两个常量,MAXYEAR和MINYEAR,分别是9999和1.

image.png

datetime模块定义了5个类

1.datetime.date:表示日期的类
2.datetime.datetime:表示日期时间的类
3.datetime.time:表示时间的类
from datetime import date
from datetime import datetime
from datetime import time
from datetime import timedelta
from datetime import tzinfo
from datetime import * #不知道用啥 全部导入就可以
4.datetime.timedelta:表示时间间隔,即两个时间点的间隔
5.datetime.tzinfo:时区的相关信息


image.png

datetime.date


date类有三个参数,datetime.date(year,month,day),返回year-month-day


1.datetime.date.ctime(),返回格式如 Sun Apr 16 00:00:00 2017


2.datetime.date.fromtimestamp(timestamp),根据给定的时间戮,返回一个date对象;datetime.date.today()作用相同


3.datetime.date.isocalendar():返回格式如(year,month,day)的元组,(2017, 15, 6)


4.datetime.date.isoformat():返回格式如YYYY-MM-DD


5.datetime.date.isoweekday():返回给定日期的星期(0-6)星期一=0,星期日=6 这里表明下python3中是从[1-7]表示的 就是本来是星期几现在显示就是星期几


6.datetime.date.replace(year,month,day):替换给定日期,但不改变原日期


7.datetime.date.strftime(format):把日期时间按照给定的format进行格式化。


8.datetime.date.timetuple():返回日期对应的time.struct_time对象


time.struct_time(tm_year=2017, tm_mon=4, tm_mday=15, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=5, tm_yday=105, tm_isdst=-1)


9.datetime.date.weekday():返回日期的星期

image.png



python中时间日期格式化符号:


%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 当前时区的名称


%% %号本身


datetime的time类


time类有5个参数:


datetime.time(hour,minute,second,microsecond,tzoninfo),返回08:29:30


1.datetime.time.replace()


2.datetime.time.strftime(format):按照format格式返回时间


3.datetime.time.tzname():返回时区名字


4.datetime.time.utcoffset():返回时区的时间偏移量


datetime的datetime类


datetime类有很多参数,datetime(year, month, day[, hour[, minute[, second[, microsecond[,tzinfo]]]]]),返回年月日,时分秒


datetime.datetime.ctime() 将datetime.datetime类型转化成str类型,输出:Sun Jul 28 15:47:51 2019


datetime.datetime.now():返回当前系统时间:2019-07-28 15:42:24.765625


datetime.datetime.now().date():返回当前日期时间的日期部分:2019-07-28


datetime.datetime.now().time():返回当前日期时间的时间部分:15:42:24.750000


datetime.datetime.fromtimestamp()

datetime.datetime.replace()


datetime.datetime.strftime():由日期格式转化为字符串格式


datetime.datetime.now().strftime(’%b-%d-%Y %H:%M:%S’)

 ‘Apr-16-2017 21:01:35’

datetime.datetime.strptime():由字符串格式转化为日期格式


datetime.datetime.strptime(‘Apr-16-2017 21:01:35’, ‘%b-%d-%Y %H:%M:%S’)

2017-04-16 21:01:35


datetime的timedelta类

image.png

datetime.timedelta


datetime.timedelta用来计算两个datetime.datetime或者datetime.date类型之间的时间差。


def new(cls, days=0, seconds=0, microseconds=0,milliseconds=0, minutes=0, hours=0, weeks=0):


从构造函数中来看,参数可选:days、seconds、microseconds、milliseconds、minutes、hours、weeks,且默认是0。


比如说我们想知道300天前的今天是几号,可以这样实现:

>>> now = datetime.datetime.now().date()
>>> now
datetime.date(2018, 11, 9)
>>> delta = datetime.timedelta(days = 300)
>>> now - delta
datetime.date(2018, 1, 13)

datetime.timedelta()也可以多个参数,比如计算300天12小时前的时间。


>>> now = datetime.datetime.now()
>>> now
datetime.datetime(2018, 11, 9, 15, 30, 36, 156323)
>>> delta = datetime.timedelta(days = 300,hours = 12)
>>> now - delta
datetime.datetime(2018, 1, 13, 3, 30, 36, 156323)

计算总天数和秒数。

>>> datetime.timedelta(days=1,hours = 2).days
1
>>> datetime.timedelta(days=1,hours = 2).total_seconds()
93600.0

相关文章
|
24天前
|
XML JSON 数据库
Python的标准库
Python的标准库
162 77
|
2月前
|
机器学习/深度学习 算法 数据挖掘
数据分析的 10 个最佳 Python 库
数据分析的 10 个最佳 Python 库
102 4
数据分析的 10 个最佳 Python 库
|
25天前
|
XML JSON 数据库
Python的标准库
Python的标准库
47 11
|
2月前
|
人工智能 API 开发工具
aisuite:吴恩达发布开源Python库,一个接口调用多个大模型
吴恩达发布的开源Python库aisuite,提供了一个统一的接口来调用多个大型语言模型(LLM)服务。支持包括OpenAI、Anthropic、Azure等在内的11个模型平台,简化了多模型管理和测试的工作,促进了人工智能技术的应用和发展。
133 1
aisuite:吴恩达发布开源Python库,一个接口调用多个大模型
|
25天前
|
数据可视化 Python
以下是一些常用的图表类型及其Python代码示例,使用Matplotlib和Seaborn库。
通过这些思维导图和分析说明表,您可以更直观地理解和选择适合的数据可视化图表类型,帮助更有效地展示和分析数据。
64 8
|
1月前
|
安全 API 文件存储
Yagmail邮件发送库:如何用Python实现自动化邮件营销?
本文详细介绍了如何使用Yagmail库实现自动化邮件营销。Yagmail是一个简洁强大的Python库,能简化邮件发送流程,支持文本、HTML邮件及附件发送,适用于数字营销场景。文章涵盖了Yagmail的基本使用、高级功能、案例分析及最佳实践,帮助读者轻松上手。
35 4
|
2月前
|
存储 索引 Python
Python 的基本语法
这些是 Python 的基本语法要素,掌握它们是学习和使用 Python 的基础。通过不断地实践和应用,你将能够更深入地理解和熟练运用这些语法知识,从而编写出高效、简洁的 Python 代码
79 5
|
2月前
|
测试技术 Python
Python中的异步编程与`asyncio`库
Python中的异步编程与`asyncio`库
|
7月前
|
自然语言处理 JavaScript 前端开发
Python高级语法与正则表达式(二)
正则表达式描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串做替换或者从某个串中取出符合某个条件的子串等。