记录python处理时间的模块:time模块、datetime模块和calendar模块。

python版本:2.7

https://blog.csdn.net/songfreeman/article/details/50564504

在介绍模块之前,先说下以下几点:

1.时间通常有这几种表示方式:

  a.时间戳:通常是从1970年1月1日00:00:00开始按秒计算的偏移量,如:1488520142.802

  b.格式化的时间字符串:按指定的格式化字符来输出字符串形式的时间,如指定格式化字符为:'%Y-%m-%d %H:%M:%S',得到的时间字符串为:2017-03-03 13:51:34。格式化字符见图1.

  c.以元组的形式表示,共9个元素。具体的元素见图2.

2.通用协调时UTC(Universal Time Coordinated)与格林尼治平均时GMT(Greenwich Mean Time)一样,都与英国伦敦的本地时间相同,是世界标准时间。中国为UTC+8

    

一、time模块

主要包含的函数:

time()    ——  返回当前时间戳,浮点数形式,不接受参数。

gmtime()   ——  将时间戳转换为UTC时间,元组形式,接受一个浮点型时间戳参数,默认值为当前时间戳。

localtime()  ——  将时间戳转换为本地时间,元组形式,接受一个浮点型时间戳参数,默认值为当前时间戳。

ctime()    ——  将时间戳转换为指定的字符串形式,接受一个浮点型时间戳参数,默认值为当前时间戳。

actime()   ——  将时间元组格式转换为指定字符串形式,接受一个元组参数,默认值为localtime()返回值。

mktime()   ——  将本地时间元组转换为时间戳,接受一个元组参数,必选。

strftime()   ——  将时间元组以指定的格式转换为字符串形式,接受格式化字符串、时间元组,时间元组参数可选,默认为localtime()。

strptime()  ——  将指定格式的时间字符串解析为时间元组,接受格式化字符串、字符串形式的时间,两个参数均为必选。

sleep()    ——  延迟指定时间,接受整型、浮点型,单位为秒。

clock()    ——  在Unix系统上,返回进程时间,用秒表示的时间戳;在Windows系统上,第一次调用返回的是进程运行的实际时间,第二次之后的调用,是自第一次调用以后到现在的运行时间。

tzset()    ——  改变本地时区。(经测试该函数报错:该模块未包含该方法。具体原因尚未细究。)

(该图摘自网络,原图作者已无处可查)

常用的:

得到当前时间的格式化字符串:

将格式化字符串转换为时间戳:

二、datetime模块

除了用于获取时间,该模块对于时间的比较操作非常方便。直接上图上代码。

datetime.date.today()

datetime.datetime.now()

三、calendar模块

calendar是一个定义了一个日历类,,封装了一个月或年的日期和星期,另外,也可以展示文本日历和HTML日历的格式输出
  1. import calendar
  2. c = calendar.TextCalendar(calendar.SUNDAY)
  3. c.prmonth(2016, 1)
  4. January 2016
  5. Su Mo Tu We Th Fr Sa
  6. 1  2
  7. 3  4  5  6  7  8  9
  8. 10 11 12 13 14 15 16
  9. 17 18 19 20 21 22 23
  10. 24 25 26 27 28 29 30
  11. 31

函数及描述

1. calendar.calendar(year, w=2, l=1, c=6, m=3)

  返回一个多行字符串格式的year年年历。

2. calendar.firstweekday()

  返回当前每周起始日期的设置。默认返回0,即星期一。

3. calendar.isleap(year)

  闰年返回True,否则False。

4. calendar.leapdays(y1, y2)

  返回y1到y2之间的闰年总数,包含y1,不包含y2。

5. calendar.month(year, month, w=2, l=1)

  返回一个多行字符串格式的year年month月日历。

6. calendar.monthcalendar(year,month)

  返回一个整数的单层嵌套列表。每个子列表装载一个星期。该月之外的日期都为0,该月之内的日期设为该日的日期,从1开始。

7. calendar.monthrange(year, month)

  返回两个整数组成的元组,第一个是该月的第一天是星期几,第二个是该月的天数。(calendar.monthrange(year, month): 
  Returns weekday of first day of the month and number of days in month, for the specified year and month.——Python文档) 
  ps:此处计算星期几是按照星期一为0计算。

8. calendar.prcal(year, w=2, l=1, c=6)

  等于print calendar.calendar(year)

9. calendar.prmonth(year, month)

  同上。

10. calendar.setfirstweekday(weekday)

  设置每周起始日期码。0(星期一)到6(星期日)

11. calendar.timegm(tupletime)

  和time.gmtime相反,接收一个时间元组,返回该时刻的时间戳(计算机元年之后的秒数)

12. calendar.weekday(year, month, day)

  返回给定日期的星期码,0(星期一)到6(星期日)。

python处理时间相关的方法的更多相关文章

  1. python处理时间相关的方法(汇总)

    记录python处理时间的模块:time模块.datetime模块和calendar模块. python版本:2.7 在介绍模块之前,先说下以下几点: 1.时间通常有这几种表示方式: a.时间戳:通常 ...

  2. python 类属性与方法

    Python 类属性与方法 标签(空格分隔): Python Python的访问限制 Python支持面向对象,其对属性的权限控制通过属性名来实现,如果一个属性有双下划线开头(__),该属性就无法被外 ...

  3. Python执行系统命令的方法 os.system(),os.popen(),commands

    os.popen():用python执行shell的命令,并且返回了结果,括号中是写shell命令 Python执行系统命令的方法: https://my.oschina.net/renwofei42 ...

  4. python 调用 shell 命令方法

    python调用shell命令方法 1.os.system(cmd) 缺点:不能获取返回值 2.os.popen(cmd) 要得到命令的输出内容,只需再调用下read()或readlines()等   ...

  5. python 面向对象、特殊方法与多范式、对象的属性及与其他语言的差异

    1.python 面向对象 文章内容摘自:http://www.cnblogs.com/vamei/archive/2012/06/02/2532018.html   1.__init__() 创建对 ...

  6. python 字典内置方法get应用

    python字典内置方法get应用,如果我们需要获取字典值的话,我们有两种方法,一个是通过dict['key'],另外一个就是dict.get()方法. 今天给大家分享的就是字典的get()方法. 这 ...

  7. [转] python程序的调试方法

    qi09 原文 python程序的调试方法 本文讨论在没有方便的IDE工具可用的情况下,使用pdb调试python程序 源码例子 例如,有模拟税收计算的程序: #!/usr/bin/python de ...

  8. Python prettytable的使用方法

    Python prettytable的使用方法 prettytable可以整齐地输出一个表格信息: +-----------+------+------------+----------------- ...

  9. Python多线程及其使用方法

    [Python之旅]第六篇(三):Python多线程及其使用方法   python 多线程 多线程使用方法 GIL 摘要: 1.Python中的多线程     执行一个程序,即在操作系统中开启了一个进 ...

随机推荐

  1. 第一百四十八节,封装库--JavaScript,菜单切换

    第一百四十八节,封装库--JavaScript,菜单切换 首先在封装库封装点击切换方法 /** dian_ji_qie_huan()方法,设置点击切换,将元素设置成点击切换,也就是点击目标元素后,循环 ...

  2. smartJS 0.1 API 讲解 - PromiseEvent

    上篇简单的介绍smartjs了一些通用方法的api.这篇介绍基础的PromiseEvent(这个名字一直没想好,以前准备用callbacks的,但避免与jquery混淆,st的命名空间可以直接挂到$上 ...

  3. 虚拟机(VMware Workstation)安装Ubuntu简易安装

    1.安装虚拟机 这里我安装的是:VMware Workstation v12.1.0 官方简体中文版 地址:http://www.3987.com/xiazai/1/12/37116.html#dow ...

  4. mysql小技巧记录

    1.在mysql场景中,每一行都是用分号(:)作为结束的. 2.在php场景中,最后的分号(:)可以省略掉. 如: <? $sql = "select * from tem" ...

  5. Log4j 汇总

    一.概念 .1. log4j是 是线程安全的 日志框架,高度可配置,可通过在运行时的外部文件配置. 默认情况下,日志管理在CLASSPATH 查找一个名为 log4j.properties 的文件. ...

  6. solver解析与设置

    Caffe的solver参数设置: http://caffe.berkeleyvision.org/tutorial/solver.html net: "path to prototxt ( ...

  7. Linux下tomcat相关操作

    tomcat安装: 直接到官网下载tar包解压即可. tomcat相关操作: 首先,进入Tomcat下的bin目录,例如:cd /usr/tomcat/bin 启动Tomcat:./startup.s ...

  8. JAVA大数(转)

    1.输入 首先要想输入需要先包括: import java.util.*; 我们需要其中的 Scanner类声明的对象来扫描控制台输入. 针对A+B来说: import java.util.*; pu ...

  9. delphi,增删改查问题记录

    新增时获取新的主键方法 1.oracle :sys_guid()   写法: 2.sql:pGetGUID  写法: {**************************************** ...

  10. 第4章 x86反汇编速成班

    4.1 抽象层次 硬件<微指令<机器码<低级语言<高级语言<解释型语言 4.2 逆向工程 4.3 x86体系结构 冯-诺依曼体系结构 中央处理器(CPU): 负责执行代码 ...