python datetime time_python时间处理模块 datetime time模块 deltetime模块

1 首先介绍time模块,因为简单

python 自带模块

本人使用time模块,只使用两个函数

time函数和sleep函数

import time

a.     time.time()   函数 返回unix时间  常用作两个时间差的计算

b.     time.sleep()  休眠多久,精度为子秒(subsecond)

In [90]: t1 = time.time()

In [91]: t1

Out[91]: 1461400225.877932

In [92]: time.sleep(2)

In [93]: t2 = time.time()

In [94]: t2 - t1

Out[94]: 24.2673659324646

2 其他处理时间的场景,本人都是使用datetime模块

python 自带

from datetime import datetime

常用时间场景 #获取当前时间In [95]: from datetime import datetime

In [96]: now = datetime.now()

#注意类型,时间之间的计算一定要是时间类型,即相同类型之间可以加减In [97]: type(now)

Out[97]: datetime.datetime

In [98]: now

Out[98]: datetime.datetime(2016, 4, 23, 16, 33, 0, 143269)

a.     常用获取 当前的年份,月份,日期,时,周(注意周的数值,0-6  0表示周一,依次类推)

In [116]: year, month, today, hour, week = (now.year, now.month, now.day, now.hour, now.weekday())

In [117]: year, month, today, hour, week

Out[117]: (2016, 4, 23, 16, 5)

b.    ctime()函数  返回可读的字符串格式In [118]: now.ctime()

Out[118]: 'Sat Apr 23 16:33:00 2016'

c.    strftime() 函数 将datetime时间格式,转换成为指定的字符串格式In [121]: now.strftime('%Y-%m-%d')

Out[121]: '2016-04-23'

返回昨天的unix时间now= datetime.now()

yesterday = now - timedelta(1)

yest_clock = (datetime.now()  -timedelta(1)).strftime('%s')

d.    strptime() 函数,将字符串模式的时间,转化成为datetime格式In [123]: datetime.strptime('20160101','%Y%m%d')

Out[123]: datetime.datetime(2016, 1, 1, 0, 0)

3 timedelta

来自datetime模块

from datetime import timedelta

作用计算datetime类型时间的一个差值(得到或将来的一个)

常用获取前一天的datetime时间In [129]: now

Out[129]: datetime.datetime(2016, 4, 23, 16, 33, 0, 143269)

In [130]: now - timedelta(1)

Out[130]: datetime.datetime(2016, 4, 22, 16, 33, 0, 143269)

获取一个小时之前的时间In [134]: now

Out[134]: datetime.datetime(2016, 4, 23, 16, 33, 0, 143269)

一秒前,一小时前,一天前,一分中之前

但是没有一年前,一个月前勒(这个原因你能想明白的)In [158]: now - timedelta(seconds=1)

Out[158]: datetime.datetime(2016, 4, 23, 16, 32, 59, 143269)

In [159]: now - timedelta(seconds=1)

Out[159]: datetime.datetime(2016, 4, 23, 16, 32, 59, 143269)

In [160]: now - timedelta(hours=1)

Out[160]: datetime.datetime(2016, 4, 23, 15, 33, 0, 143269)

In [161]: now - timedelta(days=1)

Out[161]: datetime.datetime(2016, 4, 22, 16, 33, 0, 143269)

In [162]: now - timedelta(minutes=1)

Out[162]: datetime.datetime(2016, 4, 23, 16, 32, 0, 143269)

获取上周

In [4]: from datetime import datetime

In [5]: now = datetime.now()

In [6]: from datetime import datetime,  timedelta

In [7]: now = datetime.now()

In [8]: last_week = now -timedelta(weeks=1)

In [9]: now

Out[9]: datetime.datetime(2016, 5, 4, 21, 39, 35, 424140)

In [10]: last_week

Out[10]: datetime.datetime(2016, 4, 27, 21, 39, 35, 424140)

In [12]: now.weekday()

Out[12]: 2

注意:星期npython中代表

一0

二1

三2

四3

五4

六5

日6

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值