栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python生成GMT时间格式以及时间戳日期等

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python生成GMT时间格式以及时间戳日期等

目录
        • 一、datetime生成GMT时间格式
        • 二、python将时间戳与日期格式化互相转换
        • 三、python生成一定范围的日期集合
        • 四、python生成一定今天/昨天/明天的日期
        • 五、python将excel的日期数字42380格式化
        • 六、python比较两个日期大小

一、datetime生成GMT时间格式
  • 案例: js当中生成的格式如下new Date()+Math.random(1000)
  • 即'Sat Apr 30 2022 15:03:40 GMT+0800 (中国标准时间)0.25518323366967754'
  • python代码如下生成如下
    from datetime import datetime
    import random
    
    gmt_format = '%a %b %d %Y %H:%M:%S GMT+0800 (中国标准时间)'
    print(datetime.now().strftime(gmt_format) + str(random.random()))
    # Sat Apr 30 2022 15:06:03 GMT+0800 (中国标准时间)0.23243302776998054
    
二、python将时间戳与日期格式化互相转换
  • python将时间戳格式化成日期
    import time
    
    
    time_stamp = int(time.time())  # 10位长度时间戳
    format_time = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time_stamp))
    print(format_time)  # 2022-04-30 15:15:36
    
  • python将日期转换为时间戳
    import time
    
    
    time_arr = time.strptime('2019-06-03 21:19:03', "%Y-%m-%d %H:%M:%S")
    time_tmp = time.mktime(time_arr)  # 时间戳
    print(int(time_tmp))
    
三、python生成一定范围的日期集合
  • 比如生成前几天的日期
    import datetime
    
    
    def set_date_range(days_num):
        """
        设置日期范围
        :return:返回日期列表,类似这种:['2019-09-10', '2019-09-09', '2019-09-08']
        """
        date_range = list()
        for num in range(days_num):
            str_day = str(datetime.date.today() - datetime.timedelta(days=num))
            date_range.append(str_day)
        return date_range
    
    
    print(set_date_range(5))
    # ['2022-04-30', '2022-04-29', '2022-04-28', '2022-04-27', '2022-04-26']
    
四、python生成一定今天/昨天/明天的日期
  • 通过datetime.timedelta()来加减日期
    import datetime
    
    
    _days_num = 1
    _days_num = 1
    # 今天
    now_date = str(datetime.date.today())
    print(now_date)
    # 昨天
    before_date = str(datetime.date.today() - datetime.timedelta(days=_days_num))
    print(before_date)
    # 明天
    after_date = str(datetime.date.today() + datetime.timedelta(days=_days_num))
    print(after_date)
    
五、python将excel的日期数字42380格式化
  • 格式化excel里面的数字日期格式
    import datetime
    
    
    def conversion_date(dates: int):
        """
        定义转化日期戳的函数,dates为excel日期数字42380
        :param dates:
        :return:
        """
        delta = datetime.timedelta(days=dates)
        # 将1899-12-30转化为可以计算的时间格式并加上要转化的日期戳
        today = datetime.datetime.strptime('1899-12-30', '%Y-%m-%d') + delta
        return datetime.datetime.strftime(today, '%Y-%m-%d')
    
    
    print(conversion_date(42380))  # 2016-01-11
    
    
    
六、python比较两个日期大小
  • 比较日期大小先格式化

    import datetime
    
    
    def diff_time(time_1, time_2, fmt='%Y-%m-%d'):
        """
        比较两个日期大小
        :param time_1: 日期 2019-01-11
        :param time_2: 日期 2019-01-11
        :param fmt: 日期格式
        :return: time_1 大于 time_2 则返回True
        """
        if datetime.datetime.strptime(time_1, fmt) > datetime.datetime.strptime(time_2, fmt):
            return True
        # return False
    
    
    print(diff_time('2019-01-11', '2022-01-11'))
    print(diff_time('2024-01-11', '2022-01-11'))
    
  • 或者按前面的转换成时间戳比较大小

    import time
    
    
    time_arr = time.strptime('2019-06-03 21:19:03', "%Y-%m-%d %H:%M:%S")
    time_tmp = time.mktime(time_arr)  # 时间戳
    print(int(time_tmp))
    
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/850438.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号