根据当前时间戳获得整小时时间戳
unit = 3600
start_time = int(time.time())/3600 * 3600
根据当前时间戳获得整天时间戳
unit = 3600*24
start_time = int(time.time()) / unit * unit - 8 * 3600由于时间戳起始为1970 年 1 月 1 日(08:00:00)所以这里需要减8小时才时0点的时间戳
---------------------
import time
import datetime

t = time.time()

print (t)                       #原始时间数据
print (int(t))                  #秒级时间戳
print (int(round(t * 1000)))    #毫秒级时间戳

nowTime = lambda:int(round(t * 1000))
print (nowTime());              #毫秒级时间戳,基于lambda

print (datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'))   #日期格式化

返回
1499825149.26
1499825149
1499825149257
1499825149257
2017-07-12 10:05:49
 
2、将日期转为秒级时间戳
dt = '2018-01-01 10:40:30'
ts = int(time.mktime(time.strptime(dt, "%Y-%m-%d %H:%M:%S")))
print (ts)
返回
1514774430
 
3、将秒级时间戳转为日期
ts = 1515774430
dt = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(ts))
print(dt)
返回
2018-01-13 00:27:10
1.获取当前时间的两种方法:

复制代码
代码如下:

import datetime,time
now = time.strftime("%Y-%m-%d %H:%M:%S")
print now
now = datetime.datetime.now()
print now

2.获取上个月最后一天的日期(本月的第一天减去1天)

复制代码
代码如下:

last = datetime.date(datetime.date.today().year,datetime.date.today().month,1)-datetime.timedelta(1)
print last

3.获取时间差(时间差单位为秒,常用于计算程序运行的时间)

复制代码
代码如下:

starttime = datetime.datetime.now()
#long running
endtime = datetime.datetime.now()
print (endtime - starttime).seconds

4.计算当前时间向后10个小时的时间
 
复制代码
代码如下:

d1 = datetime.datetime.now()
d3 = d1 + datetime.timedelta(hours=10)
d3.ctime()

其本上常用的类有:datetime和timedelta两个。它们之间可以相互加减。每个类都有一些方法和属性可以查看具体的值,如 datetime可以查看:天数(day),小时数(hour),星期几(weekday())等;timedelta可以查看:天数(days),秒数 (seconds)等。 

5.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 当前时区的名称
%% %号本身

In [27]: from datetime import datetime

  
In [28]: a=datetime.now()

  
In [29]: b=datetime.now()

  
In [32]: a

Out[32]: datetime.datetime(2015, 4, 7, 4, 30, 3, 628556)

  
In [33]: b

Out[33]: datetime.datetime(2015, 4, 7, 4, 34, 41, 907292)

  
In [34]: str(a)                   字符串的转换,用户储存到文本或者数据库

Out[34]: '2015-04-07 04:30:03.628556'

  
In [35]:datetime.strptime(str(a),"%Y-%m-%d %H:%M:%S.%f")

Out[35]:datetime.datetime(2015, 4, 7, 4, 30, 3, 628556)

  
In [36]: (b-a)

Out[36]: datetime.timedelta(0, 278, 278736)

  
In [37]: (b-a).seconds              时间差的计算,单位为秒

Out[37]: 278

Q:如何方便的计算两个时间的差,如两个时间相差几天,几小时等

A:使用datetime模块可以很方便的解决这个问题,举例如下:

>>> import datetime

>>> d1 = datetime.datetime(2005, 2, 16)

>>> d2 = datetime.datetime(2004, 12, 31)

>>> (d1 - d2).days

47

上例演示了计算两个日期相差天数的计算。

import datetime

starttime = datetime.datetime.now()

#long running

endtime = datetime.datetime.now()

print (endtime - starttime).seconds

上例演示了计算运行时间的例子,以秒进行显示。

>>> d1 = datetime.datetime.now()

>>> d3 = d1 + datetime.timedelta(hours=10)

>>> d3.ctime()

上例演示了计算当前时间向后10小时的时间。

其本上常用的类有:datetime和timedelta两个。它们之间可以相互加减。每个类都有一些方法和属性可以查看具体的值,如datetime可以查看:天数(day),小时数(hour),星期几(weekday())等;timedelta可以查看:天数(days),秒数(seconds)等。

以上所述就是本文的全部内容了,希望大家能够喜欢。