zoukankan      html  css  js  c++  java
  • Python 日期和时间

    time.time()获取当前时间戳

    例如:

    #!/usr/bin/python
    # -*- coding: UTF-8 -*-
    
    import time;  # 引入time模块
    
    ticks = time.time()
    print "当前时间戳为:", ticks

    结果:

    当前时间戳为: 1491750320.74

    时间元组

    比如获取当前时间:

    #!/usr/bin/python
    # -*- coding: UTF-8 -*-
    
    import time
    
    localtime = time.localtime(time.time())
    print "本地时间为 :", localtime

    获取格式化的时间

    localtime = time.asctime( time.localtime(time.time()) )
    print "本地时间为 :", localtime

    结果:

    本地时间为 : Sun Apr 09 23:12:15 2017

    格式化日期

    格式有点类似java的日期格式化

    import time
    
    # 格式化成2016-03-20 11:45:39形式
    print time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
    
    # 格式化成Sat Mar 28 22:24:24 2016形式
    print time.strftime("%a %b %d %H:%M:%S %Y", time.localtime())
    
    # 将格式字符串转换为时间戳
    a = "Sat Mar 28 22:24:24 2016"
    print time.mktime(time.strptime(a, "%a %b %d %H:%M:%S %Y"))

    结果:

    2017-04-09 23:13:50
    Sun Apr 09 23:13:50 2017
    1459175064.0

    日期格式化符号

    获取某月日历

     直接以日历的形式显示某月的信息

     2017年4月份的日历:

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

    import calendar

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

    显示结果:

    以下输出2017年4月份的日历:
    April 2017
    Mo Tu We Th Fr Sa Su
    1 2
    3 4 5 6 7 8 9
    10 11 12 13 14 15 16
    17 18 19 20 21 22 23
    24 25 26 27 28 29 30

    Time 模块

    示例:

    #!/usr/bin/python
    # -*- coding: UTF-8 -*-
    import time
    
    print 'time.altzone = ', time.altzone  # 返回格林威治西部的夏令时地区的偏移秒数。如果该地区在格林威治东部会返回负值(如西欧,包括英国)。对夏令时启用地区才能使用。
    print 'time.asctime() = ', time.asctime()  # 接受时间元组并返回一个可读的形式为"Tue Dec 11 18:07:14 2008"(2008年12月11日 周二18时07分14秒)的24个字符的字符串。
    print 'time.clock() = ', time.clock()  # 用以浮点数计算的秒数返回当前的CPU时间。用来衡量不同程序的耗时,比time.time()更有用。
    print 'time.ctime() = ', time.ctime()  # 作用相当于asctime(localtime(secs)),未给参数相当于asctime()
    print 'time.gmtime() = ', time.gmtime()  # 接收时间辍(1970纪元后经过的浮点秒数)并返回格林威治天文时间下的时间元组t。注:t.tm_isdst始终为0
    print 'time.localtime() = ', time.localtime()  # 接收时间辍(1970纪元后经过的浮点秒数)并返回当地时间下的时间元组t(t.tm_isdst可取0或1,取决于当地当时是不是夏令时)
    t = (2009, 2, 17, 17, 3, 38, 1, 48, 0)
    secs = time.mktime(t)
    print 'time.mktime(time.localtime(secs)) = ', time.mktime(time.localtime(secs))  # 接受时间元组并返回时间辍(1970纪元后经过的浮点秒数)。
    time.sleep(3)  # 推迟调用线程的运行,secs指秒数。
    print 'time.strftime("%y %m %d:%H %M %S", time.gmtime(secs)) = ', time.strftime("%y %m %d:%H %M %S", time.gmtime(secs))
    
    struct_time = time.strptime("30 Nov 00", "%d %b %y")
    print "returned tuple: %s " % struct_time
    print '当前时间的时间戳 = ', time.time()  # 返回当前时间的时间戳(1970纪元后经过的浮点秒数)

    结果:

    time.altzone =  -32400
    time.asctime() =  Mon Apr 10 09:13:39 2017
    time.clock() =  1.80279090059e-06
    time.ctime() =  Mon Apr 10 09:13:39 2017
    time.gmtime() =  time.struct_time(tm_year=2017, tm_mon=4, tm_mday=10, tm_hour=1, tm_min=13, tm_sec=39, tm_wday=0, tm_yday=100, tm_isdst=0)
    time.localtime() =  time.struct_time(tm_year=2017, tm_mon=4, tm_mday=10, tm_hour=9, tm_min=13, tm_sec=39, tm_wday=0, tm_yday=100, tm_isdst=0)
    time.mktime(time.localtime(secs)) =  1234861418.0
    time.strftime("%y %m %d:%H %M %S", time.gmtime(secs)) =  09 02 17:09 03 38
    returned tuple: time.struct_time(tm_year=2000, tm_mon=11, tm_mday=30, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=335, tm_isdst=-1) 
    当前时间的时间戳 =  1491786822.34

    日历(Calendar)模块

     示例:

    # !/usr/bin/python
    # -*- coding: UTF-8 -*-
    import calendar
    
    calendar.setfirstweekday(6)  # 设置每周的起始日期码。0(星期一)到6(星期日),在显示日历之前设置比较好
    print '---------calendar方法----------'
    print  calendar.calendar(2017, 2, 1,
                             6)  # calendar.calendar(year,w=2,l=1,c=6)返回一个多行字符串格式的year年年历,3个月一行,间隔距离为c。 每日宽度间隔为w字符。每行长度为21* W+18+2* C。l是每星期行数。
    print calendar.firstweekday
    print 'calendar.isleap(2017) = ', calendar.isleap(2017)  # 判断2017年是否是闰年 是闰年返回True,否则为false。
    print '2000年到2017年之间所有的闰年总数 = ', calendar.leapdays(2000, 2017)
    print '---------2017年4月份的日历----------'
    print calendar.month(2017, 4, 2, 1)
    print '---------2017年5月份的列表数据----------'
    print calendar.monthcalendar(2017, 5)  # 返回一个整数的单层嵌套列表。每个子列表装载代表一个星期的整数。Year年month月外的日期都设为0;范围内的日子都由该月第几日表示,从1开始。
    print calendar.monthrange(2017, 4)  # 返回两个整数。第一个是该月的星期几的日期码,第二个是该月的日期码。日从0(星期一)到6(星期日);月从1到12。
    print '---------prcal方法----------'
    print calendar.prcal(2017, 2, 1, 6)  # 相当于 print calendar.calendar(year,w,l,c).
    print '---------prmonth方法----------'
    print calendar.prmonth(2017, 5, 2, 1)  # 相当于 print calendar.calendar(year,w,l,c)。
    # print     calendar.timegm(tupletime) #和time.gmtime相反:接受一个时间元组形式,返回该时刻的时间辍(1970纪元后经过的浮点秒数)。没搞懂,暂时搁置
    print calendar.weekday(2017, 4, 11)  # 返回给定日期的日期码。0(星期一)到6(星期日)。月份为 1(一月) 到 12(12月)。
  • 相关阅读:
    TP5.1的Request以及构造方法注入以及助手函数的使用
    TP5的类似TP3使用‘DEFAULT_THEME’的配置修改主题风格的方法,以及常见模板错误
    MySQL中进行树状所有子节点的查询
    nginx upstream 一致性哈希模块
    Nginx的基本入门
    php模式设计之 观察者模式
    php模式设计之 适配器模式
    笔记整理
    经验小结(个人笔记)
    防止页面跳转,可防ajax之后忽然跳转(主要用于采集)
  • 原文地址:https://www.cnblogs.com/androidsuperman/p/6687056.html
Copyright © 2011-2022 走看看