Python3: datetime模块

datetime模块定义了以下几个类:

datetime.date: 表示日期的类,常用的属性有year, month, day;

datetime.time: 表示时间的类,常用的属性有hour, minute, second, microsecond;

datetime.datetime: 表示日期时间的类

datetime.timedelta: 表示时间间隔,即两个时间点之间的长度

datetime.tzinfo: 与时区有关的信息

date类:

date类表示一个日期(年、月、日)

date类定义了一些常用的类方法和类属性:

date.max  date.min: date对象所能表示的最大、最小日期;

date.resolution: date对象表示日期的最小单位,这里是天;

date.today(): 返回一个表示当前本地时间的date对象;

date.fromtimestamp(timestamp): 根据给定的时间戳,返回一个date对象;

example:

date.fromtimestamp(time.time())

date提供的实例方法和属性:

date.year  date.month  date.day: 年、月、日

date.replace(year, month, day): 生成一个新的日期对象,用参数指定的年月日代替原有对象中的属性(原有对象扔保持不变)

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

date.toordinal(): 返回日期对应的Gregorian Calendar日期;

date.weekday(): 返回weekday,如果是星期一返回0,如果是星期二返回1等等

date.isoweekday(): 返回weekday,如果是星期一返回1,如果是星期二返回2等等

date.isocalendar(): 返回格式如(year, month, day)的元祖

date.isoformat(): 返回格式如"YYYY-MM-DD"的字符串

date.strftime(fmt): 自定义格式化字符串

example:

now = date(2017,9,3)

tomorrow = now.replace(day=10)

now.timetuple()

now.weekday()

now.isoweekday()

now.isocalendar()

now.isoformat()

date还对某些操作进行了重载,它允许我们对日期进行一些操作:

date2 = date1 + timedelta: 日期加上一个时间间隔,返回一个新的日期对象

date2 = date1 - timedelta: 日期减去一个时间间隔,返回一个新的日期对象

timedelta = date2 - date1: 两个日期相减,返回一个时间间隔对象,以天为单位

date1 < date2: 两个日期进行比较

example:

now = date.today()

next_month = now.replace(month=10)

delta = next_month-now

now + delta

now < next_month

time类:

time类表示时间,由时、分、秒、微秒组成

time类定义的类属性和类方法:

time.min  time.max: time类所能表示的最小、最大时间;

time.resolution: 时间的最小单位,这里是1微秒;

time类提供的实例方法和属性:

time.hour  time.minute  time.second  time.microsecond: 时、分、秒、微秒

time.tzinfo: 时区信息

time.replace([hour[,minute[,second[,microsecond[,tzinfo]]]]]): 创建一个新的时间对象,用参数指定代替原有对象中的属性(原有对象仍保持不变)

time.isoformat(): 返回"HH:MM:SS"格式的字符串

time.strftime(fmt): 返回自定义格式化字符串

example:

tm = time(18,43,34)

tm.hour

tm.minute

tm.second

tm.microsecond

tm.isoformat()

tm2 = tm.replace(minute=20)

像date类一样,time;也可以对两个time对象进行比较、相加、相减或返回一个时间间隔

datetime类:

datetime是date与time的结合体,包括date和time的所有信息

datetime类定义了一些常用的类方法和类属性:

datetime.max  datetime.min: datetime对象所能表示的最大、最小日期;

datetime.resolution: datetime对象表示日期的最小单位;

datetime.today(): 返回一个表示当前本地时间的datetime对象;

datetime.now([tz]): 返回一个表示当前本地时间的datetime对象,如果指定了tz,则获取tz参数所指定时区的本地时间;

datetime.utcnow(): 返回一个当前UTC时间的datetime对象;

datetime.fromtimestamp(timestamp[,tz]): 根据给定的时间戳,返回一个datetime对象,参数tz指定时区信息;

datetime.utcfromtimestamp(timestamp): 根据时间戳创建一个datetime对象;

datetime.combine(date,time): 根据date和time创建一个datetime对象;

datetime.strptime(date_string, format): 将格式化字符串转换为datetime对象;

example:

datetime.max

datetime.min

datetime.resolution

datetime.now()

datetime.utcnow()

datetime.fromtimestamp(time.time())

datetime.utcfromtimestamp(time.time())

datetime类提供的实例方法和属性在date和time中已经出现过,使用方法相同:

datetime.[year|month|day|hour|minute|second|microsecond|tzinfo]

datetime.date(): 获取date对象

datetime.time(): 获取time对象

datetime.replace([year[,month[,day[,hour[,minute[,second[,microsecond[,tzinfo]]]]]]]])

datetime.timetuple(): 返回日期时间对应的time.struct_time对象;

datetime.utctimetuple()

datetime.toordinal():  返回日期对应的Gregorian Calendar日期时间

datetime.weekday()

datetime.isocalendar(): 返回格式如(year, month, day)的元祖

datetime.isoformat([sep]): 返回格式如"YYYY-MM-DD HH:MM:SS"的字符串

datetime.ctime(): 返回一个日期时间的C格式字符串

datetime.strftime(format)

example:

now = datetime.now()

now.date()

now.time()

tomorrow = now.replace(day=3)

now.timetuple()

now.toordinal()

now.weekday()

now.isoweekday()

now.isocalendar()

now.isoformat()

now.ctime()

timedelta类:

timedelta对象代表两个时间之间的时间差,两个date或datetime对象相加减可以返回一个timedelta对象

class timedelta([days,[second[,microsecond[,milliseconds[,minutes[,hours[,weeks]]]]]]])

内部只存储days, seconds, microseconds

example:

now = datetime.now()

now + timedelta(days=365)

now + timedelta(days=1)

now + timedelta(weeks=1)

now + timedelta(hours=3)

now + timedelta(minutes=10)

now + timedelta(seconds=10)

格式化字符串:

%a: 星期的简写,如:Wed

%A: 星期的全写,如:Wednesday

%b: 月份的简写,如:Apr

%B: 月份的全写,如:April

%c: 日期时间的字符串表示,如:‘Sat Sep  2 19:42:03 2017‘

%d: 日在这个月中的天数(是这个月的第几天)

%f: 微秒

%H: 小时,24小时制

%I: 小时,12小时制

%j: 日在年中的天数[001,366](是当年的第几天)

%m: 月份

%M: 分钟

%p: AM或者PM

%S: 秒,范围[00,61]

%U: 周在当年的周数,当年的第几周,星期天作为周的第一天

%w: 今天在这周的天数,范围[0,6],0表示星期天

%W: 周在当年的周数,当年的第几周,星期一作为周的第一天

%x: 日期字符串,如:04/07/10

%X: 时间字符串,如:10:14:23

%y: 2个数字表示的年份

%Y: 4个数字表示的年份

%z: 与UTC时间的间隔

%Z: 时区名称

example:

dt = datetime.now()

dt.strftime("%Y-%m-%d %H:%M:%S %f")

dt.strftime("%y-%m-%d %I:%M:%S %p")

dt.strftime("%c")

dt.strftime("%x")

dt.strftime("%X")

dt.strftime("%a")

dt.strftime("%A")

dt.strftime("%j")

dt.strftime("%U")

时间: 2024-10-11 16:30:58

Python3: datetime模块的相关文章

第五周-第05章节-Python3.5-内置模块详解之time与datetime模块

# pcjimport time# print(time.localtime())# print(time.time())# #print(help(time)) #获取time的帮助# #time.sleep(1) #睡几秒# print(time.gmtime(10000000000)) # convert seconds since Epoch to UTC tuple 标准时间 utc时区# print(time.localtime()) #convert seconds since E

day5-time &amp; datetime模块

1.概述 程序设计开发过程中,往往存在很多场景,需要把时间和日期以某种特定形式格式化输出,在python中我们需要借助time & datetime模块来实现,今天就来一探这两大模块的究竟. 2.time模块 2.1 时间表现形式 time模块中时间表现的格式主要有三种: a.timestamp时间戳,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量 b.struct_time时间元组,共有九个元素组. 属性                            值    

基于Python的datetime模块和time模块源码阅读分析

目录 1 前言  2 datetime.pyi源码分步解析 2.1 头部定义源码分析 2.2 tzinfo类源码分析 2.3 date类源码分析 2.4 time类源码分析 2.5 timedelta类源码分析 2.6 datetime类源码分析 2.7 格式化字符串 3 time模块time.pyi源码解析 1 前言 最近工作需求上对于datetime模块中的方法调用比较多,有时还要返回指定的格式,以及大小比较等情况.发现使用Python自带的datetime模块可以很好地实现相关需求,但是对

time模块和datetime模块

http://www.cnblogs.com/tkqasn/p/6001134.html 一.time模块 time模块中时间表现的格式主要有三种: a.timestamp时间戳,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量 b.struct_time时间元组,共有九个元素组. c.format time 格式化时间,已格式化的结构使时间更具可读性.包括自定义格式和固定格式. 1.时间格式转换图: 2.主要time生成方法和time格式转换方法实例: import ti

python小白-day6 time&datetime模块

time&datetime ?一.time模块 time模块提供各种操作时间的函数 说明:一般有两种表示时间的方式:       第一种是时间戳的方式(相对于1970.1.1 00:00:00以秒计算的偏移量),时间戳是惟一的       第二种以数组的形式表示即(struct_time),共有九个元素,分别表示,同一个时间戳的struct_time会因为时区不同而不同 1 2 3 4 5 6 7 8 9 10 11 12 import time print('clock():',time.cl

Python的datetime模块分析

datetime模块用于是date和time模块的合集,datetime有两个常量,MAXYEAR和MINYEAR,分别是9999和1. datetime模块定义了5个类,分别是 1.datetime.date:表示日期的类 2.datetime.datetime:表示日期时间的类 3.datetime.time:表示时间的类 4.datetime.timedelta:表示时间间隔,即两个时间点的间隔 5.datetime.tzinfo:时区的相关信息 一.首先看一下datetime.date类

python的datetime模块

导入datetime模块后用dir(datetime)命令查看 在datetime模块下有几个小模块,或叫类 (一)date小模块.处理年月日 也是先用dir(datetime.date)查看一下 其中有那么几个方法 1:today()显示今天的日期 如果嫌这样太麻烦,可以单独导入date这个小模块 2:date小模块是个类,可以对它实例化,可以加个日期参数 这样就可以对这个对象进行操作了 3:year  month day分别取得日期对象中的年月日. 4:weekday(),查看一周中的第几天

20.time与datetime模块

time与datetime模块 时间戳               1970年1月1日之后的秒,即:time.time() 格式化的字符串    2014-11-11 11:11,    即:time.strftime('%Y-%m-%d') 结构化时间          元组包含了:年.日.星期等... time.struct_time    即:time.localtime() import time time.sleep(5) ''' 程序停止5秒 ''' print(time.time(

python time模块和datetime模块详解

一.time模块 time模块中时间表现的格式主要有三种: a.timestamp时间戳,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量 b.struct_time时间元组,共有九个元素组. c.format time 格式化时间,已格式化的结构使时间更具可读性.包括自定义格式和固定格式. 1.时间格式转换图: 2.主要time生成方法和time格式转换方法实例: #! /usr/bin/env python # -*- coding:utf-8 -*- # __auth