time模块

时间的表示方法有三种:

  • 时间戳:表示的是从1970年1月1日0点至今的秒数
  • 格式化字符串表示:这种表示更习惯我们通常的读法,如2018-04-24 00:00:00
  • 格式化元祖表示:是一个具有九个元素的元祖

时间戳与格式元组的互相转换

import time   #导入time模块

d = time.time()  # 显示当前的时间戳

d
Out[16]: 1524570062.944023 time.localtime(d) #把时间戳转换为含9个元素的元组,转换为当地时间
Out[17]: time.struct_time(tm_year=2018, tm_mon=4, tm_mday=24, tm_hour=19, tm_min=41, tm_sec=2, tm_wday=1, tm_yday=114, tm_isdst=0) time.gmtime(d) #把时间戳转换为含9个元素的元组,转换为UTC时间
Out[18]: time.struct_time(tm_year=2018, tm_mon=4, tm_mday=24, tm_hour=11, tm_min=41, tm_sec=2, tm_wday=1, tm_yday=114, tm_isdst=0) ld = time.localtime(d) # ld.tm_year #转换的元组,可以根据需要单独计算对应的时间
Out[20]: 2018 time.mktime(ld) # 把元组在转换回时间戳
Out[21]: 1524570062.0

备注:UTC时间为格林威治时间,比东八区晚8个小时!

时间戳与格式化字符串的转换:

时间戳-------->格式化元组---------->格式化字符串

help(time.strftime)
Help on built-in function strftime in module time: strftime(...)
strftime(format[, tuple]) -> string #函数的格式使用 Convert a time tuple to a string according to a format specification.
See the library reference manual for formatting codes. When the time tuple
is not present, current time as returned by localtime() is used. Commonly used format codes: %Y Year with century as a decimal number.
%m Month as a decimal number [01,12].
%d Day of the month as a decimal number [01,31].
%H Hour (24-hour clock) as a decimal number [00,23].
%M Minute as a decimal number [00,59].
%S Second as a decimal number [00,61].
%z Time zone offset from UTC.
%a Locale's abbreviated weekday name.
%A Locale's full weekday name.
%b Locale's abbreviated month name.
%B Locale's full month name.
%c Locale's appropriate date and time representation.
%I Hour (12-hour clock) as a decimal number [01,12].
%p Locale's equivalent of either AM or PM. Other codes may be available on your platform. See documentation for
the C library strftime function.
ld   #格式化元组的数据
Out[22]: time.struct_time(tm_year=2018, tm_mon=4, tm_mday=24, tm_hour=19, tm_min=41, tm_sec=2, tm_wday=1, tm_yday=114, tm_isdst=0) time.strftime("%Y-%m-%d %H:%M:%S", ld)
Out[25]: '2018-04-24 19:41:02' time.strftime("%Y-%m-%d %X", ld)
Out[26]: '2018-04-24 19:41:02' time.strftime("%Y-%m-%d %X %p", ld) #时间戳转换为格式化元组
Out[27]: '2018-04-24 19:41:02 PM' #字符串转换为格式化元组,注意格式对应
time.strptime('2018-04-24 19:41:02 PM',"%Y-%m-%d %H:%M:%S %p")
Out[32]: time.struct_time(tm_year=2018, tm_mon=4, tm_mday=24, tm_hour=19, tm_min=41, tm_sec=2, tm_wday=1, tm_yday=114, tm_isdst=-1)

根据时间戳转换为字符格式

help(time.ctime)
Help on built-in function ctime in module time: ctime(...)
ctime(seconds) -> string Convert a time in seconds since the Epoch to a string in local time.
This is equivalent to asctime(localtime(seconds)). When the time tuple is
not present, current time as returned by localtime() is used. time.ctime(time.time())
Out[34]: 'Tue Apr 24 20:02:46 2018'

根据struct_time格式的元组转换为字符串

help(time.asctime)
Help on built-in function asctime in module time: asctime(...)
asctime([tuple]) -> string Convert a time tuple to a string, e.g. 'Sat Jun 06 16:26:11 1998'.
When the time tuple is not present, current time as returned by localtime()
is used. time.asctime(ld)
Out[36]: 'Tue Apr 24 19:41:02 2018'

datetime模块

dateimte模块对time模块进行了封装,提供了更多功能的接口:

在csdn上看到一个博客,讲的蛮详细的,博主禁止转载,因此附上链接。datetime模块

python的时间处理-time模块的更多相关文章

  1. Python之时间:datetime模块

    datetime在time基础之上封装了一些方法.但是time是经常使用的,datetime中的功能,time都能实现 一.datetime的三个模块 datetime.date datetime.t ...

  2. Python之时间:time模块

    import time   对于时间,使用最频繁的模块 1.获取当前时间 (1)时间戳 time.time() 时间戳:从1970年1月1日0点开始到现在按秒计算的偏移量 (2)时间元组 time.l ...

  3. Python之时间和日期模块

    1.import time 先要导入时间模块 1)time.time()得到当前的时间,返回的是时间戳,表示自1970年1月1日起到程序运行时的秒数 import time print(time.ti ...

  4. python之时间处理time模块

    import time import datetime ''' print(time.time()) #返回当前系统时间戳 print(time.ctime()) #返回当前系统时间 print(ti ...

  5. Python之时间:calender模块(日历)

    import calendar 1.星期 (1)calendar.day_name 星期的全称 print calendar.day_name for i in calendar.day_name: ...

  6. Python日期时间Date/Time

    Python程序可以处理多种方式的日期和时间.日期格式之间的转换是一种常见计算机的杂活. Python的时间和日历模块,能帮助处理日期和时间. Tick是什么? 为时间间隔,以秒为单位的浮点数.从“新 ...

  7. python 统计时间,写日志

    python 统计时间使用time模块,写日志使用logging模块,这两个都是标准模板. 测试socket使用socket模块 # 统计时间 ---------------------- impor ...

  8. Python的时间模块小结(转自:不懂真人)

    import datetimeprint time.time() #时间戳 print time.localtime(time.time()) #时间元组 print time.strftime('% ...

  9. 【转载】Python日期时间模块datetime详解与Python 日期时间的比较,计算实例代码

    本文转载自脚本之家,源网址为:https://www.jb51.net/article/147429.htm 一.Python中日期时间模块datetime介绍 (一).datetime模块中包含如下 ...

随机推荐

  1. Rsync 软件的工作方式

    1.守护进程方式(socket)  语法: Access via rsync daemon: Pull: rsync [OPTION...] [USER@]HOST::SRC... [DEST] rs ...

  2. 原生JS实现全选,反选

    无样式,比较丑 <!DOCTYPE html><html><head><meta charset="UTF-8"><title ...

  3. 天梯赛 大区赛 L3-014.周游世界 (Dijkstra)

    L3-014. 周游世界 时间限制 200 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 周游世界是件浪漫事,但规划旅行路线就不一定了-- 全世 ...

  4. 一些常用的opencv函数

    分配图像空间: IplImage* cvCreateImage(CvSize size, int depth, int channels);       size:  cvSize(width,hei ...

  5. Python实现KNN算法及手写程序识别

    1.Python实现KNN算法 输入:inX:与现有数据集(1xN)进行比较的向量   dataSet:已知向量的大小m数据集(NxM)   个标签:数据集标签(1xM矢量)   k:用于比较的邻居数 ...

  6. HDU 2089 - 不要62 - [数位DP][入门题]

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2089 Time Limit: 1000/1000 MS (Java/Others) Memory Li ...

  7. bin/hdfs dfs命令存在WARN util.NativeCodeLoader问题消除方法

    例如:[hadoop@db01 hadoop-2.5.0]$ bin/hdfs dfs -ls17/03/01 21:50:33 WARN util.NativeCodeLoader: Unable ...

  8. ubuntu ndk 开发

      参考 https://developer.android.com/ndk/index.html   配置 下载android-ndk-r10d-linux-x86_64.bin  ,运行自解压. ...

  9. 停机问题(英语:halting problem)是逻辑数学中可计算性理论的一个问题。通俗地说,停机问题就是判断任意一个程序是否能在有限的时间之内结束运行的问题。该问题等价于如下的判定问题:是否存在一个程序P,对于任意输入的程序w,能够判断w会在有限时间内结束或者死循环。

    htps://baike.baidu.com/item/停机问题/4131067?fr=aladdin 理发师悖论:村子里有个理发师,这个理发师有条原则是,对于村里所有人,当且仅当这个人不自己理发,理 ...

  10. Alignment--POJ1836

    Description In the army, a platoon is composed by n soldiers. During the morning inspection, the sol ...