zoukankan      html  css  js  c++  java
  • python time&datetime

    time&datetime

    time与datetime

    在python中通常有3种方式表示时间
    1. 时间戳
    2. 格式化的时间字符串
    3. 元组(struct_time)共九个元素

    时间戳

    使用time模块需要先导入模块

    import time
    

    输出时间戳,一个浮点数单位是秒,从1970.1.1到现在时间的秒数

    time.time()  #1497237703.2724092
    

    格式化的时间字符串

    元组(struct_time)

    time模块的属性

    time.localtime()#输出:time.struct_time(tm_year=2017, tm_mon=6, tm_mday=12, tm_hour=11, tm_min=27, tm_sec=4, tm_wday=0, tm_yday=163, tm_isdst=0) isdst是否是夏令時,世界标准时间UTC,存在的意义在于,地球分好多个时区,每个时区都有自己的时间,统一标准就可以调整全世界的步调,中国北京UTC+8

    time.timezone # 28800 查看与UTC的差值

    #28800/3600-=8

    time.altzone#函数返回格林威治西部的夏令时地区的偏移秒数。如果该地区在格林威治东部会返回负值(如西欧,包括英国)。对夏令时启用地区才能使用。



    time.daylight#你是否使用了夏令时

    time模块的方法

    time.time()#获取时间戳
    time.sleep(2)#程序睡几秒
    time.gmtime()# 函数将一个时间戳转换为UTC时区(0时区)的struct_time,可选的参数sec表示从1970-1-1以来的秒数。其默认值为time.time(),函数返回time.struct_time类型的对象。(struct_time是在time模块中定义的表示时间的对象)。
    time.localtime()#将本地时间戳转成struct_time
    time.mktime()#将struct_time转成时间戳
    time.strftime("%Y-%m-%d %H:%M:%S",struct_time对象)#将struct_time转成格式化时间
    time.strptime("2017-06-12 14:08:12","%Y-%m-%d %H:%M:%S")#直接输出Out[14]: time.struct_time(tm_year=2017, tm_mon=6, tm_mday=12, tm_hour=14, tm_min
    =8, tm_sec=12, tm_wday=0, tm_yday=163, tm_isdst=-1)一个
    struct_time对象,参数位置要对应。
    time.asctime()#'Mon Jun 12 14:40:49 2017'传入的是元组
    time.ctime(seconds)#'Mon Jun 12 14:43:01 2017'传入的是秒

    struct_time对象操作

    x=time.localtime()
    x.tm_year
    

    格式参照

    %a    本地(locale)简化星期名称    
    %A 本地完整星期名称
    %b 本地简化月份名称
    %B 本地完整月份名称
    %c 本地相应的日期和时间表示
    %d 一个月中的第几天(01 - 31)
    %H 一天中的第几个小时(24小时制,00 - 23)
    %I 第几个小时(12小时制,01 - 12)
    %j 一年中的第几天(001 - 366)
    %m 月份(01 - 12)
    %M 分钟数(00 - 59)
    %p 本地am或者pm的相应符 一
    %S 秒(01 - 61) 二
    %U 一年中的星期数。(00 - 53星期天是一个星期的开始。)第一个星期天之前的所有天数都放在第0周。 三
    %w 一个星期中的第几天(0 - 6,0是星期天) 三
    %W 和%U基本相同,不同的是%W以星期一为一个星期的开始。
    %x 本地相应日期
    %X 本地相应时间
    %y 去掉世纪的年份(00 - 99)
    %Y 完整的年份
    %Z 时区的名字(如果不存在为空字符)
    %% ‘%’字符

    datetime()

    导入

    import datetime
    

    日期:

    datetime.date
    

    时间

    datetime.time

    datetime.datetime

    print(datetime.datetime.now()) #返回 2016-08-19 12:47:03.941925

    print(datetime.date.fromtimestamp(time.time()) ) # 时间戳直接转成日期格式 2016-08-19

    print(datetime.datetime.now() )

    print(datetime.datetime.now() + datetime.timedelta(3)) #当前时间+3天

    print(datetime.datetime.now() + datetime.timedelta(-3)) #当前时间-3天

    print(datetime.datetime.now() + datetime.timedelta(hours=3)) #当前时间+3小时

    print(datetime.datetime.now() + datetime.timedelta(minutes=30)) #当前时间+30分

    c_time = datetime.datetime.now()

    print(c_time.replace(minute=3,hour=2)) #时间替换

  • 相关阅读:
    好玩/感人的小事
    本周最新文献速递20200207
    (史上最全)SNP位点与转录因子结合特异性数据库:GVATdb
    本周最新文献速递20210131
    【Python高级编程029 ● http协议 ● URL】
    【Python高级编程028 ● http协议 ● http协议介绍】
    【Python高级编程027 ● 网络编程 ● socket之send和recv原理剖析】
    【Python高级编程026 ● 网络编程 ● 多任务版TCP服务端程序开发】
    【Python高级编程025 ● 网络编程 ● 开发TCP网络程序注意点】
    【Python高级编程024 ● 网络编程 ● TCP服务端程序开发】
  • 原文地址:https://www.cnblogs.com/dcotorbool/p/7001752.html
Copyright © 2011-2022 走看看