python datetime模块详解

目录
  • 1. 获取当前时间
  • 2. 时间间隔 timedelta
  • 3. datetime 转 字符串 strftime()
  • 4. 字符串 转 datetime对象 datetime.strptime()
  • 5. parse() 解析字符串日期

python datetime模块            

Python中常用于时间的模块有time、datetime 和 calendar,顾名思义 time 是表示时间(时、分、秒、毫秒)等,calendar 是表示日历时间的,本章先讨论 datetime 模块。

先看看 datetime 模块都有些什么

datetime 模块中有什么

datetime 模块中有什么
序号   描述 类型
1 MAXYEAR 9999,指能支持的最大年份 int
2 MINYEAR 1,指能支持的最小年份 int
3 date 表示日期的类,常用的属性有year, month, day type
4 datetime 表示日期时间的类,常用的属性有hour, minute, second, microsecond type
5 datetime_CAPI 后面详细描述 'PyCapsule' 类
6 sys 各种系统信息 'module'类
7 time 表示时间的类 type
8 timedelta 表示时间间隔,即两个时间点的间隔。在日期上做天days,小时hour,分钟,秒,毫秒,微妙的时间计算 type
9 timezone 表示时区的类 type
10 tzinfo 时区的相关信息 type

准确的说,datetime 模块中的常用类即date、datetime、time、timedelta、timezone、tzinfo。

其中date、datetime、time三个类有非常相似的属性和方法。

创建该三个类的示范如下:

import datetime
date_sample=datetime.date(2021,07,20) #年月日
time_sample=datetime.time(12,20,33) #时分秒
datetime_sample=datetime.datetime(2021,7,20,12,20,33)#年月日时分秒

下面重点介绍下python datetime模块,内容如下所示:

导包

from datetime import datetime

1. 获取当前时间

now = datetime.now()
print(now)
print(type(now))
print(now.year)
print(now.month)
print(now.day)
print(now.hour)
print(now.minute)
print(now.second)
print(now.microsecond)

2. 时间间隔 timedelta

from datetime import timedelta

两个datetime对象相减,得到的是一个timedelta对象

# 计算时间间隔
delta1 = datetime(2022, 6, 30, 20) - datetime(2022, 2, 2, 1)
print(delta1)
print(type(delta1))

如图,表示148天零19个小时。

print(datetime(2022, 6, 10) + delta1)

timedelta传入不同数量的参数,表示的含义汇总如下。

第一个表示天数,第二个表示秒数,第三个表示微秒。第四个表示毫秒,第五个表示分钟,第六个表示小时。

print(timedelta(10))
print(timedelta(10,11))
print(timedelta(10, 11, 12))
print(timedelta(10, 11, 12, 13))
print(timedelta(10, 11, 12, 13, 14))
print(timedelta(10, 11, 12, 13, 14, 15))

3. datetime 转 字符串 strftime()

stamp = datetime(2022, 6, 22)
# 强制转换字符串
print(str(stamp))
# 格式化 转换 字符串
print(stamp.strftime("%Y/%m/%d %H:%M:%S"))
print(stamp.strftime("%Y-%m-%d %H:%M:%S"))
print(stamp.strftime("%Y/%m/%d"))
print(stamp.strftime("%Y-%m-%d"))

4. 字符串 转 datetime对象 datetime.strptime()

dates = ['1/6/2022', '6/1/2022']
datelist = [datetime.strptime(i, "%m/%d/%Y") for i in dates]
print(datelist)

      

5. parse() 解析字符串日期

将字符串形式的日期解析成datetime对象。
字符串写法可以有很多,如下示例。

from dateutil.parser import parse
print(parse('1/6/2022'))
print(parse('2022-6-2'))
print(parse('2022.6.3'))
print(parse('2022 6 4'))
print(parse('2022, 6, 5'))

到此这篇关于python datetime模块的文章就介绍到这了,更多相关python datetime模块内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

时间: 2022-06-22

Python日期时间模块datetime详解与Python 日期时间的比较,计算实例代码

python中的datetime模块提供了操作日期和时间功能,该模块提供了五种核心对象:datetime时间日期类型,date日期类型,time时间类型,tzinfo时区类型,timedelta时间差类型,今天为大家介绍一下datetime模块的具体使用方法与python日期时间计算与比较的相关实例 一.Python中日期时间模块datetime介绍 (一).datetime模块中包含如下类: 类名 功能说明 date 日期对象,常用的属性有year, month, day time 时间对象

python中time、datetime模块的使用

1.前言 如果您从事过python web的开发,那一定有过这样的经历,对于各种复杂繁琐的业务逻辑,掺杂着各种各样的时间约束,让人很容易搞的头晕眼花,比如展示出一天内用户进行过的所有操作记录,再比如进行验证码验证时获取当前时间与验证码生成时间进行比较,检查是否超过10分钟过期时间之类.这些关于时间的业务逻辑,要求我们必须能熟练掌握python中关于时间的两个模块,time和datetime,只有用好了这两个模块,我们才能在代码中轻松自如的应对. 2.time模块 time模块中时间表现的格式主要

python 日期处理

仅以此篇记录一下个人常用的 Python 处理日期的库与函数,主要涉及的类库有 Python 自带的 datetime, time 和 calendar,以及第三方的 dateutil.说到日期处理基本上要覆盖的概念有 date, time, datetime, timezone, calendar, 时间的比较与差值,解析与格式化显示等. 在 datetime 模块中类之间的继承关系如下: object ├── date │ └── datetime ├── time ├── timedelt

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模块 当前日期 datetime.date.today() datetime.date(2020, 4, 24) 转换元祖 >>> datetime.date.timetuple(datetime.date.today()) time.struct_time(tm_year=2020, tm_mon=4, tm_mday=24, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=4, tm_yday=115, tm_isdst=-1) 当前时间

python中datetime模块中strftime/strptime函数的使用

Python 的datetime模块 其实就是date和time 模块的结合,常见的属性方法都比较常用 比如: datetime.day,datetime.month,datetime.year 分别表示一个datetime对象的日,月,年:如下 from datetime import datetime dt=datetime.now() #创建一个datetime类对象 print dt.year,dt.month,dt.day ''' 输出为: 2015 3 8 ''' python中da

详解python datetime模块

datetime是Python处理日期和时间的标准库. 获取当前日期和时间 我们先看如何获取当前日期和时间: >>> from datetime import datetime >>> now = datetime.now() # 获取当前datetime >>> print(now) 2015-05-18 16:28:07.198690 >>> print(type(now)) <class 'datetime.datetim

Python基于datetime或time模块分别获取当前时间戳的方法实例

python的时间模块生成时间戳的方法是非常简单的,因为最近频繁用到了时间戳功能,这里简单总结了一下日常使用最为频繁的两个时间模块各自生成当前时间戳的方法,很简单,具体如下: now_time=str(datetime.datetime.now().strftime('%Y%m%d')) nowTime=str(time.strftime('%Y%m%d',time.localtime(time.time()))) print 'now_time:',now_time print 'nowTim

Python实现动态加载模块、类、函数的方法分析

本文实例讲述了Python实现动态加载模块.类.函数的方法.分享给大家供大家参考,具体如下: 动态加载模块: 方式1:系统函数__import__() 方式2:imp, importlib 模块 方式3:exec 函数 动态加载类和函数 首先,使用加载模块,使用内置函数提供的反射方法getattr(),依次按照层级获取模块->类\全局方法->类对象\类方法. test_import_module.py class ClassA: def test(self): print('test') in

Python获取当前函数名称方法实例分享

本文实例主要是Python中获取当前运行函数的名称,具体如下. python 具有强大的自省能力,在函数运行时,可以在函数内部获取到当前所在的函数名称,请看示例代码 #coding=utf-8 import sys import inspect def my_name(): print '1' ,sys._getframe().f_code.co_name print '2' ,inspect.stack()[0][3] def get_current_function_name(): prin

Python使用内置json模块解析json格式数据的方法

本文实例讲述了Python使用内置json模块解析json格式数据的方法.分享给大家供大家参考,具体如下: Python中解析json字符串非常简单,直接用内置的json模块就可以,不需要安装额外的模块. 一.json字符串转为python值 json字符串: 复制代码 代码如下: {"userAccount":"54321","date":"2016-12-06 10:26:17","ClickTime"

基于localStorge开发登录模块的记住密码与自动登录实例

关于这个模块功能模块的由来,这是鸟大大的处女秀,为什么这么说呢?一天在群里,一个哥们说有私活,开发一个****模块,我那天手痒痒就和他聊了两句,然后,就决定给她做这个模块了,和他谈了谈交付时间,他说最迟两天,然后谈了谈加个,最后达成,500¥!!!这个模块其实第一天晚上我就开发出来了,那时我给他微信说,功能模块开发ok了,要不要远程查看一下,没问题的话就交了,一会他回我,好了就发过来,然后微信就转过来500¥,当时很诧异,毕竟是处女秀,然后就把项目交给他了,并且是完美交付,在客户那里,也没有出现

python基于urllib实现按照百度音乐分类下载mp3的方法

本文实例讲述了python基于urllib实现按照百度音乐分类下载mp3的方法.分享给大家供大家参考.具体实现方法如下: #!/usr/bin/env python #-*- coding: utf-8 -*- import urllib import re baseurl = "http://music.baidu.com" url = "http://music.baidu.com/search/tag?key=经典流行" html = urllib.urlop

基于express中路由规则及获取请求参数的方法

express中常见的路由规则 主要使用的路由规则是get和post两种,即 var express = require('express'); var app = express(); app.get(); // get和post两种请求方式 app.post(); app.get()和app.post()的第一个参数为请求路径,第二个参数为处理请求的回调函数:回调函数有两个参数,分别为req和res,代表请求信息和响应信息. 获取请求路径和请求体中的各种参数 路径请求及对应获取请求路径的形式

基于vue v-for 多层循环嵌套获取行数的方法

在做vue项目的时候难免会用到循环,可是但我们后台数据返回多条记录而且是多层嵌套关系的时候,我们需要获取当前第几次循环此时就会出现问题. 下面给大家介绍两种方式,第一种是基于数学公式:第一次循环*(第二次循环总长度)+1+第二次循环 可以获取当前第几次循环 第二种方法:是在方法中进行计算返回当前下标.废话不多说先看一下效果吧 具体代码如下: 测试数据json字符串: parentList: [{ childList: [{ index: 1, childName: "第一个节点" },

Java获取凌晨时间戳的方法分析

本文实例讲述了Java获取凌晨时间戳的方法.分享给大家供大家参考,具体如下: 这两天有一个需求是查询用户匹配的推荐信息,包含一个有效时间段,以天为单位,0时0分0秒这种. 通常java中有两种方案: 第一种:使用Calendar.这种比较简单,也最常见.代码如下: package dateTimeDemo; import java.util.Calendar; public class timeDemo { public static void main(String[] args) { //

PHP实现获取毫秒时间戳的方法【使用microtime()函数】

本文实例讲述了PHP实现获取毫秒时间戳的方法.分享给大家供大家参考,具体如下: PHP获取毫秒时间戳,利用microtime()函数 php本身没有提供返回毫秒数的函数,但提供了一个microtime()函数,借助此函数,可以很容易定义一个返回毫秒数的函数. php的毫秒是没有默认函数的,但提供了一个microtime()函数,该函数返回包含两个元素,一个是秒数,一个是小数表示的毫秒数,借助此函数,可以很容易定义一个返回毫秒数的函数,例如: function getMillisecond() {