记录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. Openstack(Kilo)安装系列之Keystone(四)

    创建租间.用户.角色 一.To configure prerequisites 1.Configure the authentication token: export OS_TOKEN=ADMIN_ ...

  2. django form POST方法提交表达

    之前就着手开始尝试用django来简化web开发的流程周期,果不其然,速度还行,当然前期的产品那就相当粗糙了.举例来说,就连最基本的登录都是抄别人的,最可怕的是用GET方法提交表单,今天就尝试解决这个 ...

  3. QT国际化,中英文等多语言界面显示的方法

    在网上学习了一下QT的国际化使用方法,最后将自己试成功的方法总结例如以下: 当中遇到的问题有:生成的ts文件里 代码中的中文 有的不显示,有的显示乱码.   步骤1: 生成.ts文件,在pro项目文件 ...

  4. 第0步:OracleRAC软件准备

    表1   软件准备列表 安装包属性 文件信息 Oracle 11.2.0.4 p13390677_112040_Linux-x86-64_1of7.zip   p13390677_112040_Lin ...

  5. poj 2531(dfs)

    题目链接:http://poj.org/problem?id=2531 思路:由于N才20,可以dfs爆搞,枚举所有的情况,复杂度为2^(n). #include<iostream> #i ...

  6. python3----函数、匿名函数

    本节将学习如何用Python定义函数,调用函数,以及学习匿名函数的使用 1.定义函数 Python中定义函数用关键字def,如下例所示,func为函数名 def func(): print( &quo ...

  7. PANDAS 数据合并与重塑(join/merge篇)

    pandas中也常常用到的join 和merge方法 merge pandas的merge方法提供了一种类似于SQL的内存链接操作,官网文档提到它的性能会比其他开源语言的数据操作(例如R)要高效. 和 ...

  8. CKEDITOR 4.6.X 版本 插件 弹出对话框 Dialog中 表格 Table 自定义样式Style 问题

    项目开发过程中,发现CKEDITOR 插件的弹出框 内 如果跟据项目需要写表格(table tr td),表格的边框等属性会被 CKEDITOR的清除或覆盖,导致表格很难看. 问题关键: 插件弹出框d ...

  9. mac下面安装mysql

    参考http://www.cnblogs.com/lakeslove/p/6280404.html 关于msyql5.7,安装时最大的改变就是有了一个默认密码 我安装的是mysql-5.7.17-ma ...

  10. Java IO异常处理方式

    public class IOException{ // 获取系统默认的行分隔符 private static final String LINE_SEPARATOR = System.getProp ...