文档章节

python 中的时间模块

ricardohn
 ricardohn
发布于 2017/02/28 10:47
字数 1103
阅读 6
收藏 0
点赞 0
评论 0

1、time模块

内置的 time 模块让 Python程序能读取系统时钟的当前时间。在 time 模块中, time.time()和 time.sleep()函数是最有用的模块。

time.time()

Unix 纪元是编程中经常参考的时间: 1970 年 1 月 1 日 0 点,即协调世界时( UTC)。 time.time()函数返回自那一刻以来的秒数,是一个浮点值(回想一下,浮点值只是一个带小数点的数)。这个数字称为 UNIX 纪元时间戳。

time.sleep()函数

如果需要让程序暂停一下,就调用 time.sleep()函数,并传入希望程序暂停的秒数。

浮点数的取整 round()

Python 内置的 round()函数将它们缩短,该函数按照指定的精度四舍五入到一个浮点数。只要传入要舍入的数字,再加上可选的第二个参数,指明需要传入到小数点后多少位。如果省略第二个参数, round()将数字四舍五入到最接近的整数。
 

2、datetime模块

以更方便的格式显示日期,或对日期进行算术运算(例如,搞清楚 205 天前是什么日期,或 123天后是什么日期),就应该使用 datetime 模块。

datetime.datetime.now()

返回一个 datetime 对象,表示当前的日期和时间,根据你的计算机的时钟。这个对象包含当前时刻的年、月、日、时、分、秒和微秒。也可以利用 datetime.datetime()函数,向它传入代表年、月、日、时、分、秒的整数,得到特定时刻的 datetime 对象。这些整数将保存在 datetime 对象的 year、month、 day、 hour、 minute 和 second属性中。

 datetime.datetime.fromtimestamp()

Unix 纪元时间戳转换为 datetime
对象。 datetime 对象的日期和时间将根据本地时区转换。

timedelta 数据类型

datetime 模块还提供了 timedelta 数据类型,它表示一段时间,而不是一个时刻。要创建 timedelta 对象,就用 datetime.timedelta()函数。 datetime.timedelta()函数接受关键字参数 weeks、 days、 hours、 minutes、 seconds、 milliseconds 和 microseconds。没有 month 和 year 关键字参数,因为“月”和“年”是可变的时间,依赖于特定月份或年份。 timedelta 对象拥有的总时间以天、秒、微秒来表示。这些数字分别保存在 days、 seconds 和 microseconds 属性中。

delta = datetime.timedelta(days=11, hours=10, minutes=9, seconds=8)
delta.days, delta.seconds, delta.microseconds
#(11, 36548, 0)
delta.total_seconds()
#986948.0
str(delta)
#'11 days, 10:09:08'

算术运算符可以用于对 datetime 值进行日期运算。例如,要计算今天之后 1000天的日期,在交互式环境下:

>>> dt = datetime.datetime.now()
>>> dt
datetime.datetime(2015, 2, 27, 18, 38, 50, 636181)
>>> thousandDays = datetime.timedelta(days=1000)
>>> dt + thousandDays
datetime.datetime(2017, 11, 23, 18, 38, 50, 636181)

datetime对象转换为字符串

python中时间日期格式化符号:

  • %y 两位数的年份表示(00-99)
  • %Y 四位数的年份表示(000-9999)
  • %m 月份(01-12)
  • %d 月内中的一天(0-31)
  • %H 24小时制小时数(0-23)
  • %I 12小时制小时数(01-12)
  • %M 分钟数(00=59)
  • %S 秒(00-59)
  • %a 本地简化星期名称
  • %A 本地完整星期名称
  • %b 本地简化的月份名称
  • %B 本地完整的月份名称
  • %c 本地相应的日期表示和时间表示
  • %j 年内的一天(001-366)
  • %p 本地A.M.或P.M.的等价符
  • %U 一年中的星期数(00-53)星期天为星期的开始
  • %w 星期(0-6),星期天为星期的开始
  • %W 一年中的星期数(00-53)星期一为星期的开始
  • %x 本地相应的日期表示
  • %X 本地相应的时间表示
  • %Z 当前时区的名称
  • %% %号本身
oct21st = datetime.datetime(2015, 10, 21, 16, 29, 0)
print oct21st.strftime('%Y/%m/%d %H:%M:%S')
print oct21st.strftime('%I:%M %p')
print oct21st.strftime("%B of '%y")

#输出
#2015/10/21 16:29:00
#04:29 PM
#October of '15

将字符串转换成 datetime 对象

如果有一个字符串的日期信息,如'2015/10/21 16:29:00'或'October 21, 2015',需要将它转换为 datetime 对象,就用 datetime.datetime.strptime()函数。 strptime()函数与strftime()方法相反。定制的格式字符串使用相同的指令,像 strftime()一样。必须将格式字符串传入 strptime(),这样它就知道如何解析和理解日期字符串( strptime()函数名中 p 表示解析, parse)。

>>>datetime.datetime.strptime('October 21, 2015', '%B %d, %Y')
#datetime.datetime(2015, 10, 21, 0, 0)
>>> datetime.datetime.strptime('2015/10/21 16:29:00', '%Y/%m/%d %H:%M:%S')
#datetime.datetime(2015, 10, 21, 16, 29)
>>> datetime.datetime.strptime("October of '15", "%B of '%y")
#datetime.datetime(2015, 10, 1, 0, 0)


 


 

© 著作权归作者所有

共有 人打赏支持
ricardohn
粉丝 1
博文 76
码字总数 30236
作品 0
成都
Python 3.7.0 来了!

【新智元导读】Python官网静悄悄地发布了一条大消息:正式发布 Python 3.7.0!同时发布的还有Python 3.6.6稳定版。官网刚刚更新了可下载文档,还在用Python 2.7和Python3.5的你,赶紧用起来!...

技术小能手
07/09
0
0
Python基础入门教程(4)(数据类型)

人生苦短,我学Pyhton   Python(英语发音:/ˈpaɪθən/), 是一种面向对象、解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年,Python 源代码同...

jamesjoshuasss
2017/03/07
0
0
学习笔记(11月09日)--import&datetime

四周四次课(11月9日) 在日常的开发工作中,我们要写很多的python代码,如果都写在一个文件中,会导致代码特别难维护,为了拓展代码的可维护性,我们把函写在不同的文件里,这样每个文件包含...

wanyang_wanyang
07/03
0
0
Python编程规范及性能优化

Python编程规范及性能优化 Ptyhon编程规范 编码 所有的 Python 脚本文件都应在文件头标上 # -- coding:utf-8 -- 。设置编辑器,默认保存为 utf-8 格式。 注释 业界普遍认同 Python 的注释分为...

陶邦仁
2013/01/16
0
1
关于Python Profilers性能分析器

介绍性能分析器 profiler是一个程序,用来描述运行时的程序性能,并且从不同方面提供统计数据加以表述。Python中含有3个模块提供这样的功能,分别是cProfile, profile和pstats。这些分析器提...

索隆
2012/05/02
0
0
Python sleep 用法

对于python新手来说,如果想延迟程序的执行,比如说延迟10秒钟后,程序再开始执行。那么在python中如何来实现这种时间的延迟呢?是否有类似于在unix/linux中可以暂停脚本执行的sleep工具呢?...

LEAN_IN
2014/04/22
0
0
6 个 Python 的日期时间库

在 Python 中有许多库可以很容易地测试、转换和读取日期和时间信息。 这篇文章是与 Jeff Triplett 一起合写的。 曾几何时,我们中的一个人(Lacey)盯了一个多小时的 Python 文档中描述日期和...

16%
05/22
0
0
The Python Tutorial 之 Whetting Your Appetite

如果你经常性的需要用计算机去做一些事情,这些事情中大部分情况可能是经常重复性的或者是枯燥的,最终(eventually)你会想让这些任务(task)实现自动化(automate)。例如,你可能希望在一...

Koma
2015/02/28
0
2
python序列化数据本地存放

深入# 序列化的概念很简单。内存里面有一个数据结构,你希望将它保存下来,重 用,或者发送给其他人。你会怎么做?嗯, 这取决于你想要怎么保存,怎么重用,发送给谁。很多游戏允许你在退出的...

临峰不畏
2015/01/18
0
0
Python性能分析 (Profiling)

性能分析(Profiling)可用于分析程序的运行时间主要消耗在何处,以便有效优化程序的运行效率。 Profiling可分为两步,一是运行程序收集程序不同部分运行时间的数据,二是数据的可视化和分析...

索隆
2012/05/02
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

idea tomcat 远程调试

tomcat 配置 编辑文件${tomcat_home}/bin/catalina.sh,在文件开头添加如下代码。    CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=7829" Idea端配......

qwfys
今天
1
0
遍历目录下的文件每250M打包一个文件

#!/usr/bin/env python # -*- utf-8 -*- # @Time : 2018/7/20 0020 下午 10:16 # @Author : 陈元 # @Email : abcmeabc@163.com # @file : tarFile.py import os import tarfile import thr......

寻爱的小草
今天
1
0
expect同步文件&expect指定host和要同步的文件&构建文件分发系统&批量远程执行命令

20.31 expect脚本同步文件 expect通过与rsync结合,可以在一台机器上把文件自动同步到多台机器上 编写脚本 [root@linux-5 ~]# cd /usr/local/sbin[root@linux-5 sbin]# vim 4.expect#!/...

影夜Linux
今天
1
0
SpringBoot | 第九章:Mybatis-plus的集成和使用

前言 本章节开始介绍数据访问方面的相关知识点。对于后端开发者而言,和数据库打交道是每天都在进行的,所以一个好用的ORM框架是很有必要的。目前,绝大部分公司都选择MyBatis框架作为底层数...

oKong
今天
12
0
win10 上安装解压版mysql

1.效果 2. 下载MySQL 压缩版 下载地址: https://downloads.mysql.com/archives/community/ 3. 配置 3.1 将下载的文件解压到合适的位置 我最终将myql文件 放在:D:\develop\mysql 最终放的位...

Lucky_Me
今天
2
0
linux服务器修改mtu值优化cpu

一、jumbo frames 相关 1、什么是jumbo frames Jumbo frames 是指比标准Ethernet Frames长的frame,即比1518/1522 bit大的frames,Jumbo frame的大小是每个设备厂商规定的,不属于IEEE标准;...

问题终结者
今天
2
0
expect脚本同步文件expect脚本指定host和要同步的文件 构建文件分发系统批量远程执行命令

expect脚本同步文件 在一台机器上把文件同步到多台机器上 自动同步文件 vim 4.expect [root@yong-01 sbin]# vim 4.expect#!/usr/bin/expectset passwd "20655739"spawn rsync -av ro...

lyy549745
今天
1
0
36.rsync下 日志 screen

10.32/10.33 rsync通过服务同步 10.34 linux系统日志 10.35 screen工具 10.32/10.33 rsync通过服务同步: rsync还可以通过服务的方式同步。那需要开启一个服务,他的架构是cs架构,客户端服务...

王鑫linux
今天
1
0
matplotlib 保存图片时的参数

简单绘图 import matplotlib.pyplot as pltplt.plot(range(10)) 保存为csv格式,放大后依然很清晰 plt.savefig('t1.svg') 普通保存放大后会有点模糊文件大小20多k plt.savefig('t5.p...

阿豪boy
今天
3
0
java 8 复合Lambda 表达式

comparator 比较器复合 //排序Comparator.comparing(Apple::getWeight);List<Apple> list = Stream.of(new Apple(1, "a"), new Apple(2, "b"), new Apple(3, "c")) .collect(......

Canaan_
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部