python中time模块指定格式时间字符串转为时间戳

本文章可以解决任意字符串格式时间转为时间戳

返回json格式 可以在此基础上进行修改

时间格式控制符 说明

  • %Y 四位数的年份,取值范围为0001~9999,如1900
  • %m 月份(01~12),例如10
  • %d 月中的一天(01~31)例如:25
  • %B 本地完整的月份名称,比如January
  • %b 本地简化的月份名称,比如Jan
  • %a 本地简化的周日期,Mon~Sun,例如Wed
  • %A 本地完整周日期,”Monday~Sunday,例如Wednesday
  • %H 24小时制小时数(00~23),例如:12
import time
import json
def get_timestamp(str_time: str, time_format: str):
    """
    :param str_time: 需要转换的字符串时间 例:2023年02月25日 17:41:12
    :param time_format:
    :return:json
    """
    if not (isinstance(str_time, str) and isinstance(time_format, str)):
        return json.dumps({'code': 1, 'msg': 'sec需为int'}, ensure_ascii=False)
    # 字符串时间格式转为结构化时间
    struck_time = time.strptime(str_time, time_format)
    # 结构化时间转为时间戳
    timestamp = time.mktime(struck_time)
    return json.dumps({'code': 0, 'msg': 'success', 'data': {'time': int(timestamp)}}, ensure_ascii=False)

x = get_timestamp(str_time='2023年02月25日 17:41:12', time_format='%Y年%m月%d日 %H:%M:%S')
y = json.loads(x)
print('获取到时间戳为:', y['data']['time'])

原文地址:https://blog.csdn.net/weixin_44213550/article/details/129218601