zoukankan      html  css  js  c++  java
  • 常用模块(3)时间模块(包含练习)

    1.小练习题(之前知识点练习)

    # 把双数日期的日志,里面给随便写点东西。
    # 1、获取到log目录下面的所有文件 os.walk()
    # 2、根据文件名来判断,是否是双数日期 ,分割字符串,取到日期
    # 3、12%2==0
    # 4、打开这个文件 open()
    import os
    for abs_path,dir,file in os.walk(r'E:syzly-codeday6logs'):
    for f in file: #空文件【】不循环 不用管
    day = f.split('.')[0].split('-')[-1]
    if int(day)%2==0:
    file_name = os.path.join(abs_path,f)#拼接绝对路径 便于打开 否则会在当前路径建立多余文件
    open(file_name,'a+',encoding='utf-8').write('写东西')#并没有付给f(f = open XXX) 所以使用完以后 就自动关闭。

    **2.时间模块

    import time

    #1、时间戳  从unix元年到现在过了多少秒

    #2、格式化好的时间

     时间戳和格式化时间转化(通过时间元组)

    #先转成时间元组

    # print(time.time())  #获取当前时间戳

    # time.sleep(10)  #等待时间10s

    today = time.strftime('%Y%m%d%H%M%S')  #获取格式化好的时间 格式可自己制定

    # print(today)

    # print(time.gmtime()) #默认取的是标准时区的时间

    s=time.localtime(1514198608)  #取到的是当前时区的时间 参数不填默认当前  s 获得时间元组

    # print(time.strftime('%Y-%m-%d %H:%M:%S',s))  #时间元组转为格式化时间

    #时间戳转换时间元组步骤

    # 1、时间戳转成时间元组  time.localtime()

    # 2、再把时间元组转成格式化的时间

    将该功能定义为函数:

    def timestamp_to_fomat(timestamp=None,format='%Y-%m-%d %H:%M:%S'):

      #1、默认返回当前格式化好的时间

      #2、传入时间戳的话,把时间戳转换成格式化好的时间,返回

      if timestamp:

            time_tuple = time.localtime(timestamp)

            res = time.strftime(format,time_tuple)

      else:

            res = time.strftime(format)  #默认取当前时间格式

      return res

    # 2018-4-21转化为时间戳

    # tp = time.strptime('2018-4-21','%Y-%m-%d')  #把格式化好的时间转成时间元组的

    # print(time.mktime(tp))  #把时间元组转成时间戳

    def strToTimestamp(str=None,format='%Y%m%d%H%M%S'):

      # 20180421165643(例子)

      #默认返回当前时间戳

      if str: #如果传了时间的话

            tp = time.strptime(str,format) #格式化好的时间,转成时间元组

            res = time.mktime(tp)#再转成时间戳

      else:

            res = time.time()  #默认取当前的时间戳

      return int(res)

     4.datatime模块(方便处理几天前后时间)

    import datetime

    print(datetime.datetime.today()) #获取当前时间,精确到秒

    print(datetime.date.today()) #精确到天

    res = datetime.datetime.today()+datetime.timedelta(days=1,minutes=5,seconds=5,weeks=5) #获取几天后的时间负数是几天前  没有年相关的

    print(res.strftime('%Y-%m-%d'))



  • 相关阅读:
    json&pickle模块
    Linux BASH 常用命令
    Vmware安装Kali2020
    CentOS7部署Prometheus
    CentOS7部署FreeRadius3.0及WEB管理界面DaloRadius
    Cisco VRRP、TRACK、SLA配置
    Cisco L2TP OVER IPSEC
    Cisco PPTP Server Configration
    华为S5700交换机初始化和配置TELNET远程登录
    华为S5720常用命令
  • 原文地址:https://www.cnblogs.com/cslw5566/p/8934293.html
Copyright © 2011-2022 走看看