zoukankan      html  css  js  c++  java
  • Python3 日期与时间戳互相转换(函数可调用)

    一、前言

      在开发中,我们经常会遇到时间戳转换日期,或者日期转换为时间戳;

      日期格式:2019-08-01 00:00:00

      时间戳格式:1564588800

      关于时间戳

      Unix时间戳(Unix timestamp),或称Unix时间(Unix time)、POSIX时间(POSIX time),是一种时间表示方式,定义为从格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。Unix时间戳不仅被使用在Unix系统、类Unix系统中(比如Linux系统),也在许多其他操作系统中被广泛采用。

    二、代码实现

    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    # @Time    : 2019/8/20 14:09
    # @Author  : admin
    # @Site    :
    # @File    : time_api.py
    # @Software: PyCharm
    
    import time
    
    '''
    常规时间转换为时间戳
    '''
    test1 = '2019-8-01 00:00:00'
    def time_data1(time_sj):                #传入单个时间比如'2019-8-01 00:00:00',类型为str
        data_sj = time.strptime(time_sj,"%Y-%m-%d %H:%M:%S")       #定义格式
        time_int = int(time.mktime(data_sj))
        return time_int             #返回传入时间的时间戳,类型为int
    
    
    
    '''
    时间戳转换年月日时间格式
    '''
    test2 = 1564588800
    def time_data2(time_sj):     #传入参数
        data_sj = time.localtime(time_sj)
        time_str = time.strftime("%Y-%m-%d %H:%M:%S",data_sj)            #时间戳转换正常时间
        return time_str       #返回日期,格式为str
    

      以上函数已经实现日期与时间戳的互相转换,并在调用函数后返回指定的格式数据。

    if __name__ == '__main__':
        test1 = '2019-8-01 00:00:00'
        test2 = 1564588800
        time1_def = time_data1(test1)
        print('函数一将日期转换为时间戳----->:',time1_def)
        time2_def = time_data2(test2)
        print('函数二将时间戳转换为常规日期----->:',time2_def)
    

      执行结果

    三、扩展

      将时间戳以列表的形式传入,传入一个列表。在以列表的形式返回;

    def time_data3(L=[]):     #传入列表参数
        time_li = []
        for i in L:
            time_int = i
            time_sj = time.localtime(time_int)
            time_str = time.strftime("%Y-%m-%d %H:%M:%S",time_sj)            #时间戳转换正常时间
            time_li.append(time_str)
        return time_li       #返回列表
    

      函数调用

    if __name__ == '__main__':
        test1 = '2019-8-01 00:00:00'
        test2 = 1564588800
        time1_def = time_data1(test1)
        print('函数一将日期转换为时间戳----->:',time1_def)
        time2_def = time_data2(test2)
        print('函数二将时间戳转换为常规日期----->:',time2_def)
        test3 = [1564102800, 1564135200, 1564362000, 1564394400, 1564448400, 1564480800, 1564534800, 1564567200]
        time3_def = time_data3(test3)
        print('函数三传入参数列表实现时间戳批量转换日期----->:',time3_def)
    

      执行结果

  • 相关阅读:
    【vue坑】vue组件不显示,没加载dom
    vue radio绑定数据
    git修改密码遇到的坑 git -- Authentication failed for
    python全局变量
    adb无法使用,提示error: unknown host service的解决办法
    uiautomator2 init初始化失败
    【解决方案】安装lxml失败 Installing lxml
    【一般都是源的问题】ubuntu使用apt-get update更新失败
    ubuntu 安装python3.6 以及安装pip3 出现Command '('lsb_release', '-a')' returned non-zero exit status 1问题解决
    ubuntu设置python软链python3.5和python3.6同时存在,python3指令使用python3.6
  • 原文地址:https://www.cnblogs.com/sky-k/p/11384418.html
Copyright © 2011-2022 走看看