所有日期、时间的api都在datetime模块内。

1. 日期输出格式化 datetime => string

import datetime

now = datetime.datetime.now()

now.strftime('%Y-%m-%d %H:%M:%S')

输出

'2015-04-07 19:11:21'

strftime是datetime类的实例方法。

2. 日期输出格式化 string => datetime

import datetime

t_str = '2015-04-07 19:11:21'

d = datetime.datetime.strptime(t_str, '%Y-%m-%d %H:%M:%S')

strptime是datetime类的静态方法。

3. 日期比较操作

在datetime模块中有timedelta类,这个类的对象用于表示一个时间间隔,比如两个日期或者时间的差别。

构造方法:

import datetime

datetime.timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0)

所有的参数都有默认值0,这些参数可以是int或float,正的或负的。

可以通过 timedelta.days、tiemdelta.seconds 等获取相应的时间值。

timedelta 类的实例,支持加、减、乘、除等操作,所得的结果也是 timedelta 类的实例。比如:

import datetime

year = datetime.timedelta(days=365)

ten_years = year *10

nine_years = ten_years - year

同时,date、time和datetime类也支持与timedelta的加、减运算。

datetime1 = datetime2 + timedelta

timedelta = datetime1 - datetime2

这样,可以很方便的实现一些功能。

4. 两个日期相差多少天。

import datetime

d1 = datetime.datetime.strptime('2015-03-05 17:41:20', '%Y-%m-%d %H:%M:%S')

d2 = datetime.datetime.strptime('2015-03-02 17:41:20', '%Y-%m-%d %H:%M:%S')

delta = d1 - d2

print delta.days

输出:3

5. 今天的n天后的日期。

import datetime

now = datetime.datetime.now()

delta = datetime.timedelta(days=3)

n_days = now + delta

print n_days.strftime('%Y-%m-%d %H:%M:%S')

输出:

2015-04-10 19:16:34

#coding=utf-8

import datetime

now=datetime.datetime.now()

print now

#将日期转化为字符串

datetime => string

import datetime

now=datetime.datetime.now()

print now.strftime('%Y-%m-%d %H:%M:%S')

#将字符串转换为日期 string => datetime

import datetime

t_str = '2015-03-05 16:26:23'

d=datetime.datetime.strptime(t_str,'%Y-%m-%d %H:%M:%S')

print d

#在datetime模块中有timedelta类,这个类的对象用于表示一个时间间隔,比如两个日#期或者时间的差别。

#计算两个日期的间隔

import datetime

d1 = datetime.datetime.strptime('2012-03-05 17:41:20', '%Y-%m-%d %H:%M:%S')

d2 = datetime.datetime.strptime('2012-03-02 17:41:20', '%Y-%m-%d %H:%M:%S')

delta = d1 - d2

print delta.days print delta

#今天的n天后的日期

import datetime

now=datetime.datetime.now()

delta=datetime.timedelta(days=3)

n_days=now+delta

print n_days.strftime('%Y-%m-%d %H:%M:%S')

datetime的好处是可以实现方便的时间运算,比如 endTime - starTime,这在时间duration计算时非常方便.

python时间处理函数的更多相关文章

  1. Python时间日期函数讲解

    所有日期.时间的api都在datetime模块内. 1. 日期输出格式化 datetime => string import datetime now = datetime.datetime.n ...

  2. Python time strptime() 函数根据指定的格式把一个时间字符串解析为时间元组

    Python time strptime() 函数根据指定的格式把一个时间字符串解析为时间元组 import time dt=time.strptime('2019-08-08 11:32:23', ...

  3. Python时间处理之time模块

    1.time模块简介 time模块提供各种操作时间的函数  说明:一般有两种表示时间的方式:       第一种是时间戳的方式(相对于1970.1.1 00:00:00以秒计算的偏移量),时间戳是惟一 ...

  4. Python‘ssl.match_hostname()’函数SSL证书验证安全绕过漏洞

    漏洞名称: Python‘ssl.match_hostname()’函数SSL证书验证安全绕过漏洞 CNNVD编号: CNNVD-201312-033 发布时间: 2013-12-04 更新时间: 2 ...

  5. Python作用域-->闭包函数-->装饰器

    1.作用域: 在python中,作用域分为两种:全局作用域和局部作用域. 全局作用域是定义在文件级别的变量,函数名.而局部作用域,则是定义函数内部. 关于作用域,我要理解两点:a.在全局不能访问到局部 ...

  6. Python常用功能函数

    Python常用功能函数汇总 1.按行写字符串到文件中 import sys, os, time, json def saveContext(filename,*name): format = '^' ...

  7. Python时间获取详解,Django获取时间详解,模板中获取时间详解(navie时间和aware时间)

    1.Python获取到的时间 import pytz from datetime import datetime now = datetime.now() # 这个时间为navie时间(自己不知道自己 ...

  8. python 时间相关函数

    python 中与时间处理相关的模块包括 time.datetime.以及 calendar time 模块 time() 函数:time() 函数用于返回当前时间的时间戳(1970年01月08时00 ...

  9. 【Python】Python内置函数dir详解

    1.命令介绍 最近学习并使用了一个python的内置函数dir,首先help一下: 复制代码代码如下: >>> help(dir)Help on built-in function ...

随机推荐

  1. Swift vs. Objective-C:未来看好 Swift 的十个理由

    Swift vs. Objective-C:未来看好 Swift 的十个理由 是时候使用易入手又全面的Swif语言为iOS和mac OS X做应用开发了. 虽然编程语言不会那么容易消逝,但坚持衰落范例 ...

  2. Android百度地图开发(一)之初体验

    转载请注明出处:http://blog.csdn.net/crazy1235/article/details/42614603 做关于位置或者定位的app的时候免不了使用地图功能,本人最近由于项目的需 ...

  3. linux input输入子系统应用分析

    输入设备(如按键.键盘.触摸屏.鼠标等)是典型的字符设备,其一般的工作机理是底层在按键.触摸等动作发送时产生一个中断(或驱动通过timer定时查询),然后CPU通过SPI.I2 C或外部存储器总线读取 ...

  4. UTC时间与本地时间的相互转换

    //把UTC时间转换成北京时间 DateTime now = DateTime.Parse(DateTime.UtcNow.ToString(), new CultureInfo("zh-C ...

  5. mantis 安装问题

    1. 邮件 修改 config_defaults_inc.php $g_administrator_email = 'mantis@pooy.net'; $g_webmaster_email = 'm ...

  6. mini install centOS log

    no ifconfig yum install net-tools ------------------------------------------------------------------ ...

  7. ali面试点滴

    1.喜欢问原理 最好问2句 回答8句 把相关的知识也加上 最好说一下优势与区别 2.sql优化 分库 分表 ssl https 3.jvm.高并发(事务.原子操作).设计模式(一定要烂熟于心) 4.访 ...

  8. java 笔记(5) —— 线程,yield,join

    一.线程各个状态与转换: 新建状态:用new语句创建的线程对象处于新建状态,此时它和其它的java对象一样,仅仅在堆中被分配了内存 .就绪状态:当一个线程创建了以后,其他的线程调用了它的start() ...

  9. Sql清理日志文件

    场景: 我们导入MR数据时发现磁盘空间不够用了,导致的结果就是我们的程序很可能会抛出异常了,我们需要导入数据的时候进行日志瘦身. 问1:导入数据的时候,瘦身是否会造成数据库的异常? DBA提供解决方案 ...

  10. 通用窗口类 Inventory Pro 2.1.2 Demo1(上)

    插件功能 按照Demo1的实现,使用插件来实现一个装备窗口是很easy的,虽然效果还很原始但是也点到为止了,本篇涉及的功能用加粗标出,具体的功能如下: 1.实现了两个窗口,通过点击键盘I来,打开或者关 ...