zoukankan      html  css  js  c++  java
  • time时间模块


    1.递归:
    递 函数调用
    归 函数的返回值

    递归:
    自己调用自己本身,这种是无止境的递归 会报错
    明确的终止的条件
    默认深度是1000 实际测试998
    修改深度 import sys
    import sys
    sys.setrecursionlimit('修改的数量')

    递归的应用: 文件查看 创建文件,删除文件


    自定义模块 就是一个Python 的Py文件 是不需要加后缀名的,然后进行调用
    0.这么调用的:通过模块方式去调用,比如在当前文件下操作时调用另外的文件,的函数func()等内容
    1.调用方式:
    方式一:import 调用函数的名字 import 就是调用文件的所有东西,当出现了与当前的文件出现函数重复了,是独立运行的,相当于另外开辟一块空间
    重复导没有用也只是算一次
    可以取别名 import 文件名 as f
    缺点是 把所有的内容读取到 太占内存
    导入多个文件时不要写在一行 分行写
    import test
    name=2
    print(test.name) #这样才Ok 用的时候要用调用的文件名 点一下

    方式二:from 文件名 import文件内容 可以单独调用文件的单一内容, 比如在同一个文档空时 比如 from day1.test import from day1 import text
    缺点 同时也是代码出错的地方 容易与当前的文件冲突比如函数名一样时
    如 from ttt import func as f ,foo as f1
    从ttt文件中导入了 func 和 foo 功能
    导入多个模块时要一一导入
    不推荐写法 from 模块 import *

    注意 :from tt import *
    __all__ =['func'] 自定义指定使用*
    from tt import *
    __name__在被当做模块导入时 _name__就会变为被导入模块名
    __name__在本文件内就是'__main__'
    if ___name__=='main__':当前文件的测试
    要测试的内容
    foo()
    2.调用的内容:文件内的 东西 当调用桌面的文件时 from xx import * 桌面就产生后缀名为pyc的字解码 提高了编译
    3.调用注意事项:避免出现

    4.好处 1省去开发时间,提高效率,2结构化,便于查找便于维护 3拿来就用


    重载 就是 被导入的文件 下数据发生了改变 而同时 当前的文件已经使用了 它的值是不会随着 改变的 得重新加载就是要刷新一下模块

    时间模块
    第一种:
    import time
    print(time.time()) #时间戳 是浮点数
    结构化时间在中间

    字符串时间是不能直接转成 时间戳 得先转化为结构化时间

    把时间戳 转化成结构化时间:
    print(time.gmtime()) #英国伦敦时间 括号里可以放时间戳
    print(time.localtime()) #本地计算机时间 括号里也时间戳

    把时间戳 转化成字符串时间:
    print(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime()))
    首先转换成结构化时间,然后在转换成字符串
    print(time.strftime('%Y-%m-%d',time.localtime(799976843)))#自己指定时间去看具体的年月日

    字符串时间转化成结构化时间
    print(time.strptime('2013-10-08 18:34','%Y-%m-%d %H:%M'))
    用一个变量去接就可以变成 时间戳
    t=time.strptime('2013-10-08 18:34','%Y-%m-%d %H:%M')
    print(time.mktime(t))
    第二种:
    from datetime import datetime,timedelta
    print(datetime.now()) #当前时间,字符串形式2019-01-15 21:00:43.177491
    f=datetime.now() #当前时间
    print(datetime.timestamp(f))# 获取时间戳 1547557346.568405

    import time
    print(datetime.utcfromtimestamp(time.time())) #将时间戳转化为时间类型 2019-01-15 13:04:59.469151

    # 字符串转化为时间类型
    print(datetime.strptime('2018--10-2 18:32','%Y-%m-%d %H:%M'))

    # 把一个时间类型转化为字符串类型
    # datetime.now()
    s = datetime.strftime(datetime.now(),'%Y-%m-%d %H:%M:%S')
    print(s)

    # 时间的加减 用的就是 timedelta(改变的时间) 比如天数 小时等
    # print(datetime.now() + timedelta(hours=1))
    # print(datetime.now() + timedelta(days=1))

    # t = datetime.now() + timedelta(weeks=3)
    # print(t - timedelta(days=2,hours=13))
    #结果
    # 2019-01-15 22:13:47.657361
    # 2019-01-16 21:13:47.657361
    # 2019-02-03 08:13:47.657361


    from test import *
    from datetime import datetime,timedelta

    print(datetime.now()) # 当前时间,字符串的形式

    f = datetime.now()
    print(datetime.timestamp(f)) #获取时间戳 1547540156.951705

    import time
    print(datetime.fromtimestamp(time.time())) # 将时间戳转换成时间类型

    print(datetime.strptime('2018-10-1 13:14','%Y-%m-%d %H:%M')) # 字符串转换成一个时间类型

    datetime.now()
    s = datetime.strftime(datetime.now(),'%Y-%m-%d %H:%M:%S') # 把一个时间类型转换成字符串
    print(type(s))
  • 相关阅读:
    Android Touch事件的分发过程
    使用runOnUiThread更新UI
    Sqlite访问数据库很慢的问题
    资源收集
    mongdb shard集群均衡导致宿主机CPU飙到100%处理
    Harbor安装
    springboot 启动脚本获取pid问题
    androidstudio build 时间太长处理
    修改 Docker 的 daemon.json后启动失败
    关于在centos7 64为引用android so引发的问题修复
  • 原文地址:https://www.cnblogs.com/LMTlmt/p/10279925.html
Copyright © 2011-2022 走看看