如何在python中将普通时间戳转换为历元时间戳

如何在python中将普通时间戳转换为历元时间戳,python,python-3.x,timestamp,unix-timestamp,epoch,Python,Python 3.x,Timestamp,Unix Timestamp,Epoch,问题1: 是否将人类可读的日期转换为一天开始时的历元时间戳/时间? 例子。 如果输入日期为2020年1月21日,则在一天的开始(即上午12:00)打印纪元时间 条件: 日期限制:1970年1月1日至 输入说明: 输入日期将采用以下任何格式 年月日 年月日 年月日 年月日 年月日 年月日 ddmmyyy mmddyyyy 输出说明: 对于上述所有类型的输入日期,输出应为历元时间戳/时间 问题1–日期到历元时间戳 例外情况: 必须处理给定格式以外的任何输入日期,并显示消息“无法转换 必须打印“提供日

问题1: 是否将人类可读的日期转换为一天开始时的历元时间戳/时间? 例子。 如果输入日期为2020年1月21日,则在一天的开始(即上午12:00)打印纪元时间 条件: 日期限制:1970年1月1日至 输入说明: 输入日期将采用以下任何格式

  • 年月日
  • 年月日
  • 年月日
  • 年月日
  • 年月日
  • 年月日
  • ddmmyyy
  • mmddyyyy
  • 输出说明: 对于上述所有类型的输入日期,输出应为历元时间戳/时间

    问题1–日期到历元时间戳

    例外情况: 必须处理给定格式以外的任何输入日期,并显示消息“无法转换 必须打印“提供日期”

    更多示例:

    例1 输入:19-01-2020 产出:1579392000

    例2 输入:31122012 产量:1356912000

    例3 输入:25122202 输出:无法转换提供的日期

    from datetime import datetime
    import re
    
    my_input = input("Enter date: ")
    my_input = re.sub("/", "-", my_input)
    my_input = re.sub(".", "-", my_input)
    
    try:
        out = datetime.strptime(my_input, "%d-%m-%Y").timestamp()
    except Exception:
        try:
            out = datetime.strptime(my_input, "%d%m%Y").timestamp()
        except Exception:
            out = "Unable to convert the provided date"
    
    print(out)
    
        
    
    例4 输入:17:04:2020
    输出:无法转换提供的日期

    请从中重复和。“演示如何解决此编码问题”。你必须这样做,然后就你的实现提出一个具体的问题。这个问题(我指的是家庭作业)应该给出输入的时区信息——否则,结果是不明确的,因为Python将naive datetime视为本地时间。因为没有为输入提供时区信息,此代码的结果将取决于运行此代码的机器的时区设置。取决于输入时区。想改变时区吗?
    from datetime import datetime
    import re
    
    my_input = input("Enter date: ")
    my_input = re.sub("/", "-", my_input)
    my_input = re.sub(".", "-", my_input)
    
    try:
        out = datetime.strptime(my_input, "%d-%m-%Y").timestamp()
    except Exception:
        try:
            out = datetime.strptime(my_input, "%d%m%Y").timestamp()
        except Exception:
            out = "Unable to convert the provided date"
    
    print(out)