一、时间相关的概念

time模块模块提供了各种时间相关的函数,在介绍时间相关功能前,先介绍一些术语和惯例:

  1. epoch 是时间开始的点,并且取决于平台。对于Unix, epoch 是1970年1月1日00:00:00(UTC)。要找出给定平台上的 epoch ,请查看 time.gmtime(0) 。
  2. 术语 Unix 纪元秒数 是指自国际标准时间 1970 年 1 月 1 日零时以来经过的总秒数,通常不包括 闰秒。 在所有符合 POSIX 标准的平台上,闰秒都会从总秒数中被扣除。
  3. time模块中的功能可能无法处理纪元之前或将来的远期日期和时间。未来的截止点由C库决定;对于32位系统,它通常在2038年。
  4. 2000年(Y2K)问题 :Python依赖于平台的C库,它通常没有2000年问题,因为所有日期和时间都在内部表示为自纪元以来的秒数。函数 strptime() 在给出 %y 格式代码时可以解析2位数年份。当解析2位数年份时,它们将根据 POSIX 和 ISO C 标准进行转换:值 69–99 映射到 1969–1999,值 0–68 映射到2000–2068。
  5. UTC是协调世界时(以前称为格林威治标准时间,或GMT)。缩写UTC不是错误,而是英语和法语之间的妥协。
  6. DST是夏令时,在一年中的一部分时间(通常)调整时区一小时。 DST规则很神奇(由当地法律确定),并且每年都会发生变化。 C 库有一个包含本地规则的表(通常是从系统文件中读取以获得灵活性),并且在这方面是True Wisdom的唯一来源。
  7. 各种实时函数的精度可能低于表示其值或参数的单位所建议的精度。例如,在大多数Unix系统上,时钟 “ticks” 仅为每秒50或100次。

二、time模块的主要功能

  1. time.asctime([t]):转换一个元组或 struct_time 表示的时间t,由 gmtime() 或 localtime() 返回为以下形式的字符串: ‘Wed Aug 7 11:21:16 2019’ 。如果未提供 t ,则使用由 localtime() 返回的当前时间。
  2. time.ctime([secs]):将自 epoch以来的秒数 表示的时间转换为表示本地时间的字符串。如果未提供 secs 或为 None,则使用由 time() 返回的当前时间。 ctime(secs) 相当于 asctime(localtime(secs)) 。
  3. time.gmtime([secs]):将 自 epoch以来的秒数表示的时间转换为UTC的 struct_time ,如果未提供 secs 或为 None ,则使用由 time() 返回的当前时间。
  4. time.localtime([secs]):与 gmtime() 相似但转换为当地时间。如果未提供 secs 或为 None ,则使用由 time() 返回的当前时间。
  5. time.mktime(t):这是 localtime() 的反函数。它的参数是 struct_time 或者完整的 9 元组,它表示 本地时间,而不是 UTC 。
  6. time.process_time():返回当前进程的系统和用户CPU时间总和的值(以小数秒为单位)。它不包括睡眠期间经过的时间。根据定义,它在整个进程范围中。返回值的参考点未定义,因此只有连续调用结果之间的差异才有效。
  7. time.sleep(secs):休眠secs秒,参数可以是浮点数,以指示更精确的睡眠时间。实际的暂停时间可能小于请求的时间,因为任何捕获的信号将在执行该信号的捕获例程后终止 sleep() 。。
  8. time.strftime(format[, t]):转换一个元组或 struct_time 表示的由 gmtime() 或 localtime() 返回的时间到由 format 参数指定的字符串。如果未提供 t ,则使用由 localtime() 返回的当前时间。 format 必须是一个字符串。如:
>>> "{}".format(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime()))
'2019-08-07 11:30:53'
>>>
  1. time.strptime(string[, format]):根据格式解析表示时间的字符串。 返回值为一个被 gmtime() 或 localtime() 返回的 struct_time 。format 参数使用与 strftime()使用的指令相同的指令。它默认为匹配 ctime() 返回格式的 “%a %b %d %H:%M:%S %Y”` 。

关于时间的模块还有datetime和calendar,在此不在介绍,大家自行查询相关文档。

老猿Python,跟老猿学Python!

博客地址:https://blog.csdn.net/LaoYuanPython


请大家多多支持,点赞、评论和加关注!谢谢!

第12.5节 Python time模块导览的更多相关文章

  1. 第12.1节 Python os模块导览

    os 模块提供了许多与操作系统交互的函数,一定要使用 import os 而不是 from os import * ,这将避免内建的 open() 函数被 os.open() 隐式替换掉,它们的使用方 ...

  2. 第12.3节 Python math模块导览

    math 模块提供对浮点数学的底层C库函数的访问,常用的成员包括: math.ceil(x):返回 x 的上限,即大于或者等于 x 的最小整数 math.floor(x):返回 x 的向下取整,小于或 ...

  3. 第12.2节 Python sys模块导览

    sys模块包括一些用于系统处理的功能,常用的成员包括: sys.argv:当前执行进程的命令参数列表,不含执行程序本身的名字: sys.stdin .sys.stdout 和 stderr :分别对应 ...

  4. 第12.4节 Python伪随机数数生成器random模块导览

    random模块实现了各种分布的伪随机数生成器,常用功能包括: random.seed(a=None, version=2):初始化随机数生成器,如果 a 被省略或为 None ,则使用当前系统时间. ...

  5. 第12.6节 Python标准库其他内置模块导览

    一. 文本处理服务 string模块 : 常见的字符串操作 difflib模块: 计算差异的辅助工具 textwrap模块: 文本自动换行与填充,能够格式化文本段落,以适应给定的屏幕宽度: unico ...

  6. 第10.1节 Python的模块及模块导入

    一. 什么是模块 Python中的模块即单个的Python代码文件,为什么称为模块呢?这是因为在Python中,每个独立的Python文件都可以作为被其他代码导入的模块使用,导入的模块有自己的名字空间 ...

  7. 第10.3节 Python导入模块能否取消导入?

    模块导入后,是否可以取消导入?实际上当模块导入后,是无法逆向还原到导入前的状态的,但是可以利用"del 模块名"进行导入模块的删除,此时的删除只是删除了导入模块对应的模块变量名,删 ...

  8. 第12.7节 Python标准库内置模块小结

    本章老猿走马观花般的介绍了一下前面没有介绍的内置模块,内容很多,介绍的很泛,介绍的目的只是让大家知道有哪些内置模块.大致的功能有哪些,以后要使用时大家可以再去详细研究.之所以采用这种方式,一是老猿时间 ...

  9. 第11.6节 Python正则表达式的字符串开头匹配模式及元字符“^”(插入符、脱字符)功能介绍

    符号"^"为插入符,也称为脱字符,在Python中脱字符表示匹配字符串的开头,即字符串的开头满足匹配模式的要求.这个功能有点类似搜索函数match,只是这是通过搜索模式来指定,而m ...

随机推荐

  1. Python的Cmd模块的简易运用学习

    昨天大佬阿炳给发了一份代码给我,看着感觉很好玩,这是自己写了个命令行吗,完了我就找篇更详细一点的博客学习了一下  cmd的主要方法和属性 方法: (1)cmdloop():类似与Tkinter的mai ...

  2. Shell 筛选符合条件的 ELF 文件

    0 运行环境 本机系统:Windows 10 虚拟机软件:Oracle VM VirtualBox 6 虚拟机系统:Ubuntu 18 1 引言 - 编译过程 我们知道在 CPU 上执行的是低级别的机 ...

  3. C++ 基础 2:C++ 对 C 语言的拓展

    1 引用 1.1 定义及编程实践 引用,是某个已存在变量的另一个名字. 一旦把引用初始化为某个变量,就可以使用该引用名称或变量名称来指向变量. 注意: 引用没有定义,是一种关系型声明.声明它和原有某一 ...

  4. Git操作:远程仓库(git remote)的添加、管理和删除

    这是你的git仓库,他已经添加了一个远程仓库,可以用git remote -v查看绑定的仓库列表,他会以<仓库名>  <仓库地址>的形式展示出来(一个仓库会显示两遍): $ g ...

  5. MyBatis源码解析

    在讲解MyBatis之前,先说下传统JDBC连接数据库的弊端: 1.JDBC底层没有实现连接池,从而导致操作数据库需要频繁的创建和释放,影响性能: 2.JDBC的代码散落在Java代码中,如果需要修改 ...

  6. Android studio设置参数文档提示

    方法/步骤     进行点击Android studio菜单中的file的选项菜单.   弹出了下拉菜单中进行选择为"settings"的选项的菜单即可.   进入到了settin ...

  7. threading中的其他部分方法

    import threading def wahaha(n): print(n, threading.current_thread()) # 1 <Thread(Thread-1, starte ...

  8. Nacos服务发现源码解析

    1.Spring服务发现的统一规范 Spring将这套规范定义在Spring Cloud Common中 discovery包下面定义了服务发现的规范 核心接口:DiscoveryClient 用于服 ...

  9. 推荐一个适用于SpringBoot项目的轻量级HTTP客户端框架,快来试试它!

    在SpringBoot项目直接使用okhttp.httpClient或者RestTemplate发起HTTP请求,既繁琐又不方便统一管理.因此,在这里推荐一个适用于SpringBoot项目的轻量级HT ...

  10. 还不懂java类加载机制的,建议看下这份阿里技术官总结的笔记!

    类加载机制 把class文件加载到内存,并对数据进行校验,准备,解析,初始化,形成可以被虚拟机直接使用的字节码 类加载的时机(触发类的初始化) 使用new关键字实例化对象 读取一个类的静态代码块 使用 ...