zoukankan      html  css  js  c++  java
  • time

    • 在python中,通常有这几种方式来表示时间
      • 1.时间戳
      • 2.格式化的时间字符串
      • 3.元组(struct_time)共九个元素。由于python的time模块实现主要调用C库,所以各个平台可能有所不同
    • 几个定义
      • UTC:世界标准时间。在中国,为UTC+8。
      • DST即夏令时
      • 时间戳(timestamp)的方式:通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。我们运行“type(time.time())”,返回的是float类型
      • 元组(struct_time)方式:struct_time元组共有9个元素,返回struct_time的函数主要有gmtime(),localtime(),strptime()。下面列出这种方式元组中的几个元素:
      • 索引(Index)    属性(Attribute)    值(Values)
        0                  tm_year(年)        比如2011 
        1                  tm_mon(月)          1 - 12
        2                  tm_mday(日)         1 - 31
        3                  tm_hour(时)         0 - 23
        4                  tm_min(分)          0 - 59
        5                  tm_sec(秒)          0 - 61
        6                  tm_wday(weekday)    0 - 6(0表示周日)
        7                  tm_yday(一年中的第几天) 1 - 366
        8                  tm_isdst(是否是夏令时)  默认为-1
    • time模块的方法
      • (1)time.time():返回当前时间的时间戳
      • (2)time.localtime([secs]):将一个时间戳转换为当前时区的struct_time。secs参数未提供,则以当前时间为准
      • (3)time.gmtime([secs]):和localtime()方法类似,gmtime()方法是将一个时间戳转换为UTC时区(0时区)的struct_time。
      • 1 print(time.time())#当前时间戳  1512992826.3101041
        2 print(time.localtime())#当前时间
        3 #time.struct_time(tm_year=2017, tm_mon=12, tm_mday=11, tm_hour=19, tm_min=47, tm_sec=6, tm_wday=0, tm_yday=345, tm_isdst=0)
        4 print(time.localtime(1000))
        5 #time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=8, tm_min=16, tm_sec=40, tm_wday=3, tm_yday=1, tm_isdst=0)
        6 print(time.gmtime())#0时区时间
        7 #time.struct_time(tm_year=2017, tm_mon=12, tm_mday=11, tm_hour=11, tm_min=47, tm_sec=6, tm_wday=0, tm_yday=345, tm_isdst=0)
        8 print(time.gmtime(1000))
        9 #time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=0, tm_min=16, tm_sec=40, tm_wday=3, tm_yday=1, tm_isdst=0)
        1-3示例
      • (4)time.mktime(t):将一个struct_time转化为时间戳。
      • (5)time.sleep(secs):线程推迟指定的时间运行。单位为秒
      • (6)time.asctime([t]):把一个表示时间的元组或者struct_time表示为这种形式:'Sun Oct 1 12:04:38 2017'。如果没有参数,将会将time.localtime()作为参数传入。
      • (7)time.ctime([secs]):把一个时间戳(按秒计算的浮点数)转化为time.asctime()的形式。如果参数未给或者为None的时候,将会默认time.time()为参数。它的作用相当于time.asctime(time.localtime(secs))。
      • 1 a = time.localtime()
        2 print(time.mktime(a))#把时间转换为时间戳,1512993116.0
        3 time.sleep(0.5)#延时
        4 print(time.asctime(a))#把时间转换为Mon Dec 11 19:51:56 2017格式
        5 print(time.asctime())#默认为转换当前时间Mon Dec 11 19:51:56 2017
        6 print(time.ctime(1511872))  #把指定时间戳转换为上面的格式Sun Jan 18 19:57:52 1970
        7 print(time.ctime())#默认把当前的时间戳转换为上面的格式Mon Dec 11 19:51:56 2017
        4-7示例
      • (8)time.strftime(format[, t]):把一个代表时间的元组或者struct_time(如由time.localtime()和time.gmtime()返回)转化为格式化的时间字符串。如果t未指定,将传入time.localtime()。
      • (9)time.strptime()
        • 举例:time.strptime('2017-10-3 17:54',"%Y-%m-%d %H:%M") #输出 time.struct_time(tm_year=2017, tm_mon=10, tm_mday=3, tm_hour=17, tm_min=54, tm_sec=0, tm_wday=1, tm_yday=276, tm_isdst=-1)
      • 1 b = time.strftime('%Y-%m-%d %H:%M:%S')#把时间转换为指定格式输出,可指定时间,默认为当前时间
        2 print(b)# 2017-12-11 19:54:58
        3 print(type(b))#<class 'str'>
        4 print(time.strptime(b,'%Y-%m-%d %H:%M:%S'))#把指定格式的时间转换为时间对象,可再通过mktime转换为时间戳
        5 #time.struct_time(tm_year=2017, tm_mon=12, tm_mday=11, tm_hour=19, tm_min=54, tm_sec=58, tm_wday=0, tm_yday=345, tm_isdst=-1)
        8-9示例
  • 相关阅读:
    操作datetable 里面查出来的某个字段
    C# 字符串去重 还有 去除最后一位逗号。
    C# .net 调用ERP接口
    视图下拉列表接收控制器传来的值,并选中下拉类表中该值相对应的选项(新手笔记,请各位大神指教)
    MVC5控制器传值的三种方式(ViewData,ViewBag,TempData),刚刚学习MVC5的新手,希望各位大神多多指教
    c++模板之SFINAE
    c++头文件包含问题
    成员函数指针有多态的效果吗?
    emacs基本操作
    在c++中用function与bind实现委托
  • 原文地址:https://www.cnblogs.com/GraceZ/p/8022446.html
Copyright © 2011-2022 走看看