python(4)-- 日期 & 时间
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中,其他处理日期和时间的模块还有:
python(4)-- 日期 & 时间的更多相关文章
- Python学习---日期时间
在Python里面日期时间的功能主要由几个模块提供:time,calendar,datetime,date等 time主要用到的功能函数: #!/usr/bin/python3 # coding:ut ...
- Python实用日期时间处理方法汇总
这篇文章主要介绍了Python实用日期时间处理方法汇总,本文讲解了获取当前datetime.获取当天date.获取明天/前N天.获取当天开始和结束时间(00:00:00 23:59:59).获取两个d ...
- 程序员常用6 个 Python 的日期时间库
内建的 datetime 模块 在跳转到其他库之前,让我们回顾一下如何使用 datetime 模块将日期字符串转换为 Python datetime 对象. 假设我们从 API 接受到一个日期字符串, ...
- Python基础 | 日期时间操作
目录 获取时间 时间映射 格式转换 字符串转日期 日期转字符串 unixtime 时间计算 时间偏移 时间差 "日期时间数据"作为三大基础数据类型之一,在数据分析中会经常遇到. 本 ...
- Python数值日期时间笔记
数值: 格式化 小数位的处理 随机数: random.choice() 序列中随机选择一个值 random.sample() 获取指定数目的序列 random.shuffle() 打乱顺序 rando ...
- [ Python入门教程 ] Python中日期时间datetime模块使用实例
Python中datetime模块提供强大易用的日期处理功能,用于记录程序操作或修改时间.时间计算.日志时间显示等功能.datatime模块重新封装了time模块,提供的类包括date.time.da ...
- python 之日期时间处理
##python时间操作一般使用time.datetime两个模块 对于time模块,时间的表示模式有3种1.时间戳:time.time()2.字符串: time.strftime('%Y%m%d') ...
- Python中日期时间案例演示
案例:准备10个人姓名,然后为这10个人随机生成生日[都是90后] 1.统计出那些人是夏季[6月-8月]出生的. 2.最大的比最小的大多少天 3.谁的生日最早,谁的生日最晚 备注:春季[3-5]夏季[ ...
- python输出日期时间
import datetime base = datetime.datetime.today() , ): print(base + datetime.timedelta(days=x))
- Python中对时间日期的处理方法简单汇总
这篇文章主要介绍了Python实用日期时间处理方法汇总,本文讲解了获取当前datetime.获取当天date.获取明天/前N天.获取当天开始和结束时间(00:00:00 23:59:59).获取两个d ...
随机推荐
- 03_15_interface
03_15_interface 1. 接口 接口是抽象方法和常量值的定义的集合. 从本质上讲,接口是一种特殊的抽象类,这种抽象类中只包含常量和方法的定义,而没有变量和方法的实现. 2. 接口特性 接口 ...
- SummerVocation_Learning--java的String类方法总结
壹: public char charAt(int index),返回字符串中第index个字符. public int length(), 返回字符串长度. public int indexOf(S ...
- SQL数据库从高版本导入低版本
1. 打开高版本数据库右键–>任务–>生成脚本–>高级–>选择脚本兼容的版本(也就是低版本)–>拉倒最下面选择架构和数据 2. 在低版本里面,先新建一个数据库,名称要和脚 ...
- SPOJ1043 GSS1(线段树)
题意 给出$n$个数,每次询问区间$(l, r)$内最大字段和 Sol 在合并子树的时候,答案仅有四种情况 打四个标记维护即可 查询同理,用类似update的方式合并 注意查询的时候不能按照以前的方式 ...
- Java poi 导出Excel并下载到客户端
Maven配置,包含了其他文件格式的依赖,就全贴出来了 <dependency> <groupId>org.apache.poi</groupId> <art ...
- 【Django】Django中datetime的处理(strftime/strptime)
strftime<将date,datetime,timezone.now()类型处理转化为字符串类型> strftime()函数是用来格式化一个日期.日期时间和时间的函数,支持date.d ...
- c#:无限极树形结构
最近一直在研究树形结构菜单,无意中让我弄了出来.先上代码: 首先需要这个的一个类 public class Tree { public int id { get; set; } public stri ...
- tcl之变量-数组array
- java util - Unicode转换工具
测试代码 package cn.java.codec.unicode; public class Test { public static void main(String[] args) throw ...
- java util - 在java代码中执行javascript代码工具 rhino-1.7.7.jar
需要 rhino-1.7.7.jar 包 代码示例: package cn.java.mozilla.javascript; import org.mozilla.javascript.Context ...