• 【参考】Python日期时间转换与格式化


    Note


    1、时间格式

    %a # 显示当前是星期几的英文简写
    %A # 显示完整的星期几的英文全称
    %b # 显示月份的英文简写
    %B # 显示月份的英文全称
    %c # 显示日期和时间
    %d # 显示1-31之间的数字(每月的第几天)
    %H # 24小时制
    %I # 12小时制
    %j # 显示1-366之间的数字(每年的第几天)
    %m # 显示1-12之间的数字(月份)
    %M # 显示00-59之间的数字(分钟)
    %p # 以A.M./P.M.方式显示是上午/下午
    %S # 显示0-59之间的数字(秒)
    %U # 显示一年中的第几周(星期天为一周的第一天)
    %w # 显示一周中的第几天(星期天为0,星期一为1)
    %W # 显示一年中的第几周(星期一为一周的第一天)
    %x # 显示当地的日期,例如本地时间为:北京时间2013年9月17日
    %X # 显示当地的时间,例如本地时间为:北京时间2013年9月17日07:55:04
    %y # 显示(00-99)之间的年份,例如:服务器时间为:2013年9月17日,则显示结果为13
    %Y # 显示完整年份,例如:服务器时间为:2013年9月17日,则显示结果为2013
    %z,%Z # 显示时区,如果不能显示,则显示为空字符%%用于显示%符号

    模块-time


    1、字符串时间转换为时间戳

    # 将其转换为时间数组(a = "2013-10-10 23:40:00",转换为timeStamp = 381419600)
    import time
    timeArray = time.strptime(a, "%Y-%m-%d %H:%M:%S")

    # 转换为时间戳:
    timeStamp = int(time.mktime(timeArray))
    timeStamp == 1381419600

    2、字符串时间格式化

    # 先转换为时间数组,然后转换为其他格式(a = "2013-10-10 23:40:00",转换为 a = "2013/10/10 23:40:00")
    timeArray = time.strptime(a, "%Y-%m-%d %H:%M:%S")
    otherStyleTime = time.strftime("%Y/%m/%d %H:%M:%S", timeArray)

    3、时间戳转换为指定格式时间

    # 利用localtime()转换为时间数组,然后格式化为需要的格式(timeStamp = 1381419600,转换为 otherStyletime == "2013-10-10 23:40:00"):
    timeStamp = 1381419600
    timeArray = time.localtime(timeStamp)
    otherStyleTime = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)
    otherStyletime == "2013-10-10 23:40:00"

    模块-datetime


     1、时间戳转换为指定格式时间

    # 利用utcfromtimestamp()转换为时间数组,然后格式化为需要的格式(timeStamp = 1381419600,转换为 otherStyletime == "2013-10-10 23:40:00"):
    import datetime
    timeStamp = 1381419600
    dateArray = datetime.datetime.utcfromtimestamp(timeStamp)
    otherStyleTime = dateArray.strftime("%Y-%m-%d %H:%M:%S")
    otherStyletime == "2013-10-10 23:40:00"

    常用语法


    1、获取当前时间并转换为指定格式时间

    方法一:

    import time

    # 直接输出指定格式时间
    times =  (time.strftime("%Y-%m-%d %H:%M:%S"))

    方法二:

    import time

    # 获取当前时间(时间戳)
    now = int(time.time())

    # 转换为其他日期格式,如:"%Y-%m-%d %H:%M:%S"
    timeArray = time.localtime(timeStamp)
    otherStyleTime = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)

    方法三:

    import datetime

    # 获取当前时间(数组格式)
    now = datetime.datetime.now()

    # 转换为指定的格式,如:"%Y-%m-%d %H:%M:%S"
    otherStyleTime = now.strftime("%Y-%m-%d %H:%M:%S")

    print ("当前的日期和时间是 %s" % now)
    print ("ISO格式的日期和时间是 %s" % now.isoformat() )
    print ("当前的年份是 %s" %now.year)
    print ("当前的月份是 %s" %now.month)
    print ("当前的日期是  %s" %now.day)
    print ("dd/mm/yyyy 格式是  %s/%s/%s" % (now.day, now.month, now.year) )
    print ("当前小时是 %s" %now.hour)
    print ("当前分钟是 %s" %now.minute)
    print ("当前秒是  %s" %now.second)

    2、获得指定的时间并转换为指定格式时间

    import time
    import datetime

    # 获得三天前时间(数组格式)
    threeDayAgo = (datetime.datetime.now() - datetime.timedelta(days = 3))

    # 转换为时间戳:
    timeStamp = int(time.mktime(threeDayAgo.timetuple()))

    # 转换为其他格式:
    otherStyleTime = threeDayAgo.strftime("%Y-%m-%d %H:%M:%S")
    注:timedelta()的参数有:days,hours,seconds,microseconds

    3、给定时间戳,计算前几天的时间

    import datetime
    timeStamp = 1381419600

    # 先转换为datetime
    dateArray = datetime.datetime.utcfromtimestamp(timeStamp)
    threeDayAgo = dateArray - datetime.timedelta(days = 3)
    # 参考2转换为其他格式时间

    4、日历

    import calendar

    # 输出2020年1月份的日历
    cal = calendar.month(2020, 1)
    print (cal)

    --------------------------------------------
    Chances are for those who are prepared.
  • 相关阅读:
    inotify+rsync做实时同步
    JAVA序列化和反序列化
    初识iBatis
    《Spring in action》之高级装配
    《Spring in action》之装配Bean
    原根
    数论知识
    线性(欧拉)筛
    Codeforces Round #423 (Div. 2, rated, based on VK Cup Finals) E DNA Evolution
    Fibonacci
  • 原文地址:https://www.cnblogs.com/Michael-Scofields/p/13684161.html
Copyright © 2020-2023  润新知