1. Python 提供了一个 time 和 calendar 模块可以用于格式化日期和时间。

2. 时间间隔是以秒为单位的浮点小数。

3. 每个时间戳都以自从1970年1月1日午夜(历元)经过了多长时间来表示。时间戳单位最适于做日期运算。但是1970年之前的日期就无法以此表示了。太遥远的日期也不行,UNIX和Windows只支持到2038年。

4. Python 的 time 模块下有很多函数可以转换常见日期格式。如函数time.time()用于获取当前时间戳, eg:

#!/usr/bin/python
# -*- coding: UTF- -*-

import time;  # 引入time模块

ticks = time.time()
print "当前时间戳为:", ticks

以上实例输出结果:
当前时间戳为: 1459994552.51

5. 时间元组(struct_time元组),属性:

6. 实用:时间格式<-->时间戳

(1)获取当前时间--只要将浮点数传递给 localtime 之类的函数,即从返回浮点数的时间辍方式转成 时间元组,eg:

获取本地时间(时间元组格式):localtime = time.localtime(time.time()) ---

结果: time.struct_time(tm_year=2016, tm_mon=4, tm_mday=7, tm_hour=10, tm_min=3, tm_sec=27, tm_wday=3, tm_yday=98, tm_isdst=0)

(2)获取格式化的时间:你可以根据需求选取各种格式。

(3)格式化/转换日期:我们可以使用 time 模块的 strftime 方法来格式化日期:time.strftime(format[, t]),eg:

#!/usr/bin/python
# -*- coding: UTF- -*-
# 格式化
eg1:格式化成 2016-04-07 10:25:09



eg2: import time    a = "2013-10-10 23:40:00"     print int(time.mktime(time.strptime(a,# 将 时间戳 转换为 指定格式日期:
eg1: import time      timeStamp = 1381419600     print time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(timeStamp))    # 结果:"2013-10-10 23:40:00"eg2: import datetime    timeStamp = 1381419600     dateArray = datetime.datetime.utcfromtimestamp(timeStamp)    print dateArray.strftime("%Y-%m-%d %H:%M:%S")   # 结果:"2013-10-10 23:40:00"

# 字符串格式更改:如 a = "2013-10-10 23:40:00", 想改为 a = "2013/10/10 23:40:00"eg: import time     a ="2013-10-10 23:40:00"    print time.strftime("%Y/%m/%d %H:%M:%S", time.strptime(a, "%Y-%m-%d %H:%M:%S"));   # 结果:"2013/10/10 23:40:00"

# 获取 当前时间 并转换为 指定日期格式:eg1: import time    now = int(time.time())  # 获得当前时间时间戳    timeArray = time.localtime(now)    print time.strftime("%Y-%m-%d %H:%M:%S", timeArray)    # 结果:"2013-10-10 23:40:00"
eg2: import datetime    now = datetime.datetime.now()  # 获得时间数组格式    print now.strftime("%Y/%m/%d %H:%M:%S")     # 结果:"2013/10/10 23:40:00"

# 获取 3天前的时间:datetime.timedelta([days, hours, seconds, microseconds = ..])eg:import time  import datetime  threeDayAgo = (datetime.datetime.now() - datetime.timedelta(days = 3))   # 线获得时间数组格式的日期  # timeStamp = int(time.mktime(threeDayAgo.timetuple()))   # 转换为时间戳  print threeDayAgo.strftime("%Y-%m-%d %H:%M:%S")  # 结果:"2013-10-10 23:40:00"  # 注:timedelta()的参数有:days,hours,seconds,microseconds

# 给定时间戳,计算该时间的几天前时间:eg:timeStamp = 1381419600  import datetime  import time  dateArray = datetime.datetime.utcfromtimestamp(timeStamp)  print (dateArray - datetime.timedelta(days = 3))   # 结果:"2013-10-07 15:40:00"

此外:python中时间日期格式化符号:

%y 两位数的年份表示(-)
%Y 四位数的年份表示(-)
%m 月份(-)
%d 月内中的一天(-)
%H 24小时制小时数(-)
%I 12小时制小时数(-)
%M 分钟数(=)
%S 秒(-)
%a 本地简化星期名称
%A 本地完整星期名称
%b 本地简化的月份名称
%B 本地完整的月份名称
%c 本地相应的日期表示和时间表示
%j 年内的一天(-)
%p 本地A.M.或P.M.的等价符
%U 一年中的星期数(-)星期天为星期的开始
%w 星期(-),星期天为星期的开始
%W 一年中的星期数(-)星期一为星期的开始
%x 本地相应的日期表示
%X 本地相应的时间表示
%Z 当前时区的名称
%% %号本身

(4) 获取某月日历:Calendar 模块有很广泛的方法用来处理年历和月历,eg:打印某月的月历

#!/usr/bin/python
# -*- coding: UTF- -*-

import calendar

cal = calendar.month(, )
print "以下输出2016年1月份的日历:"
print cal;

以上实例输出结果:
以下输出2016年1月份的日历:
    January
Mo Tu We Th Fr Sa Su

7 Time 模块/日历(Calender)模块

7.1 Time 模块:包含了以下内置函数,既有时间处理相的,也有转换时间格式的:

  

7.2 日历(Calender)模块:此模块的函数都是日历相关的,例如打印某月的字符月历。

星期一是默认的每周第一天,星期天是默认的最后一天。更改设置需调用calendar.setfirstweekday()函数。模块包含了以下内置函数:

  

其他相关模块和函数

在Python中,其他处理日期和时间的模块还有:

最新文章

  1. spring-boot启动信息中non-fatal error
  2. css之z-index
  3. Spring配置bean文件的底层实现方式
  4. android开发常见编程错误总结
  5. smarty中foreach的用法举例
  6. winserver 2008 r2 iis7.5 实现php wordpress url静态化操作步骤(UrlRewrite实现)
  7. sql server 查找字段上的约束
  8. codeforces 15D . Map 优先队列
  9. vuejs模板使用方法
  10. PHP初入,基础知识点分享(a标签&amp;表格的嵌套&amp;文字的处理)
  11. 201521123113《Java程序设计》第11周学习总结
  12. Mac里安装Jmeter
  13. Java核心技术及面试指南 多线程并发部分的面试题总结以及答案
  14. 浅谈js中的this关键字
  15. React之ref
  16. json,pickle,shelve模块,xml处理模块
  17. UOJ#33. 【UR #2】树上GCD 点分治 莫比乌斯反演
  18. UVa 548 Tree(二叉树最短路径)
  19. [转载]ArcGIS SERVER 9.3如何清除REST缓存
  20. linux AB web 性能测试工具

热门文章

  1. 《javascript 学习笔记》
  2. mysql查看版本,编码
  3. java基础面试题:switch语句能否作用在byte上,能否作用在long上,能否作用在String上?
  4. 解决使用Application Loader上传ipa提示“上传appstore失败”
  5. node基础
  6. FTP、SFTP与FTPS
  7. python实现批量修改文件名
  8. git bash 学习2 --更改url 重置密钥 Permission denied (publickey)问题
  9. 神经网络系列学习笔记(二)——神经网络之DNN学习笔记
  10. Vue -computed传参数