python中,我们会用到很多和时间相关的操作。下面就来看看时间的模块的作用。

  使用相应功能需要导入time模块

import time

  time模块方法:

  asctime(p_tuple=None):

  将一个时间的元组或者struct_time类型的数据转换为字符串。

print(time.asctime())
print(time.asctime((2012,5,12,11,36,54,3,1,1)))
print(time.asctime(time.localtime(1462707651)))
print(type(time.asctime((2012,5,12,11,36,54,3,7,12))),type(time.asctime(time.localtime(1462707651.3773372))))

  运行结果是:

Thu Sep  1 14:36:32 2016
Thu May 12 11:36:54 2012
Sun May 8 19:40:51 2016
<class 'str'> <class 'str'>

  可以看见asctime方法将元组的时间格式以及struct_time类型的数据转换为了字符串,如果不进行参数的指定,就会返回当前时间。

  clock():

  第一次调用时返回系统运行时间,以后调用时都显示与第一次调用的间隔。

print(time.clock())
time.sleep(1)
print(time.clock())
time.sleep(1)
print(time.clock())

  运行结果是:

4.665297557343505e-07
0.9996267761954125
1.9995838554578849

  ctime(seconds=None):

  这个方法是将时间戳转换为字符串格式,如果没有参数,则将当前时间转换为字符串

print(time.ctime())
print(time.ctime(1462707651))
print(type(time.ctime()))

  运行结果是:

Thu Sep  1 14:48:54 2016
Sun May 8 19:40:51 2016
<class 'str'>

  gmtime(seconds=None):

  将时间戳转换为0时区的struct_time类型。如果没有参数,则将当前时间进行转换。

print(time.gmtime())
print(time.gmtime(1462707651))
print(type(time.gmtime(1462707651)))

  运行结果是:

time.struct_time(tm_year=2016, tm_mon=9, tm_mday=1, tm_hour=7, tm_min=8, tm_sec=13, tm_wday=3, tm_yday=245, tm_isdst=0)
time.struct_time(tm_year=2016, tm_mon=5, tm_mday=8, tm_hour=11, tm_min=40, tm_sec=51, tm_wday=6, tm_yday=129, tm_isdst=0)
<class 'time.struct_time'>

  struct_time类型解释:

    tm_year  年

    tm_mon  月

    tm_mday  日

    tm_hour  小时(注意时区的差别)

    tm_min  分

    tm_sec  秒

    tm_wday  一周的第几天(0是周一)

    tm_yday  一年的第几天

    tm_isdst  夏令时标志位(有1,0,-1)

  localtime(seconds=None):

  将时间戳转换为当前时区的struct_time类型。如果没有参数,则将当前时间进行转换。

print(time.localtime())
print(time.localtime(1462707651))
print(type(time.localtime(1462707651)))

  运行结果是:

time.struct_time(tm_year=2016, tm_mon=9, tm_mday=1, tm_hour=15, tm_min=23, tm_sec=16, tm_wday=3, tm_yday=245, tm_isdst=0)
time.struct_time(tm_year=2016, tm_mon=5, tm_mday=8, tm_hour=19, tm_min=40, tm_sec=51, tm_wday=6, tm_yday=129, tm_isdst=0)
<class 'time.struct_time'>

  mktime(p_tuple):

  接收一个时间的元组,返回时间戳。

print(time.mktime(time.gmtime()))
print(time.mktime((2016, 9, 1, 15, 23, 16, 3, 245, 0)))

  运行结果是:

1472686642.0
1472714596.0

  mktime方法必须要传入参数。

  sleep(seconds):

  延迟给定的秒数。

print(time.localtime())
time.sleep(3)
print(time.localtime())

  运行结果是:

time.struct_time(tm_year=2016, tm_mon=9, tm_mday=1, tm_hour=15, tm_min=45, tm_sec=2, tm_wday=3, tm_yday=245, tm_isdst=0)
time.struct_time(tm_year=2016, tm_mon=9, tm_mday=1, tm_hour=15, tm_min=45, tm_sec=5, tm_wday=3, tm_yday=245, tm_isdst=0)

  strftime(format, p_tuple=None):

  将struct_time类型的数据使用指定的格式输出。如果没有传入struct_time类型的数据则使用当前时间。

print(time.strftime('%Y-%m-%d %H:%M:%S'))
print(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime()))
print(time.strftime('%Y-%m-%d %H:%M:%S',(2016, 9, 1, 15, 23, 16, 3, 245, 0)))

  运行结果是:

2016-09-01 15:51:03
2016-09-01 15:51:03
2016-09-01 15:23:16

  常用的格式代码如下:
    %Y    十进制数的世纪年份
    %m    十进制数的月份[01,12]
    %d    十进制数的天数[01,31]
    %H    十进制数的小时(24小时制)[00,23]
    %M    十进制数的分钟[00,59]
    %S    十进制数的秒数[00,61]
    %z    时区与UTC(0时区)的偏移
    %a    当前语言环境下缩写的工作日名称
    %A    当前语言环境下完整的工作日名称
    %B    当前语言环境下缩写的月份名称
    %B    当前语言环境下完整的月份名称
    %C    当前语言环境下适当的日期和时间表示
    %I    十进制数的小时(12小时制)[01,12]
    %p    当前语言环境下的上午或下午

  strptime(string, format):

  将格式化字符串转换为时间戳。

print(time.strptime('2016-09-01 15:51:03','%Y-%m-%d %H:%M:%S'))
print(time.strptime('2016-09-01 15:23:16','%Y-%m-%d %H:%M:%S'))

  运行结果是:

time.struct_time(tm_year=2016, tm_mon=9, tm_mday=1, tm_hour=15, tm_min=51, tm_sec=3, tm_wday=3, tm_yday=245, tm_isdst=-1)
time.struct_time(tm_year=2016, tm_mon=9, tm_mday=1, tm_hour=15, tm_min=23, tm_sec=16, tm_wday=3, tm_yday=245, tm_isdst=-1)

  time():

  返回当前时间的时间戳,如果系统时钟提供几分之一秒,返回结果也会有相应的结果。

print(time.time())

  运行结果是:

1472717978.9570408

Python3.x time模块的更多相关文章

  1. Python3之turtle模块的使用

    Python3之turtle模块的使用     直接扣代码就行: import turtle as t t.pensize(4) t.hideturtle() t.colormode(255) t.c ...

  2. python基础系列教程——Python3.x标准模块库目录

    python基础系列教程——Python3.x标准模块库目录 文本 string:通用字符串操作 re:正则表达式操作 difflib:差异计算工具 textwrap:文本填充 unicodedata ...

  3. Python3:Requests模块的异常值处理

    Python3:Requests模块的异常值处理 用Python的requests模块进行爬虫时,一个简单高效的模块就是requests模块,利用get()或者post()函数,发送请求. 但是在真正 ...

  4. Python3中正则模块re.compile、re.match及re.search函数用法详解

    Python3中正则模块re.compile.re.match及re.search函数用法 re模块 re.compile.re.match. re.search 正则匹配的时候,第一个字符是 r,表 ...

  5. Python3安装Celery模块后执行Celery命令报错

    1 Python3安装Celery模块后执行Celery命令报错 pip3 install celery # 安装正常,但是执行celery 命令的时候提示没有_ssl模块什么的 手动在Python解 ...

  6. Python3之configparser模块

    1. 简介 configparser用于配置文件解析,可以解析特定格式的配置文件,多数此类配置文件名格式为XXX.ini,例如mysql的配置文件.在python3.X中 模块名为configpars ...

  7. python3.7 os模块

    #!/usr/bin/env python __author__ = "lrtao2010" #python3.7 os模块 #os模块是与操作系统交互的一个接口 # os.get ...

  8. python3.7 json模块

    #!/usr/bin/env python __author__ = "lrtao2010" #python3.7 json模块 ''' 要在不同的编程语言之间传递对象,就必须把对 ...

  9. python3.7 random模块

    #!/usr/bin/env python __author__ = "lrtao2010" #python3.7 random模块 import random #随机模块 # r ...

  10. python3.7 time模块

    #!/usr/bin/env python __author__ = "lrtao2010" #python3.7 time模块 #time模块没有time.py文件,是内置到解释 ...

随机推荐

  1. HTop 防止进程重复显示

    按F2 选择 Display options 选择 Hide userland threads 比Top更加好用!

  2. 【转】VIM 中设置Tab

    灵活操作 Vim 中的 Tabsgaleki post @ 2007年11月16日 05:07PM in Vim Tips with tags: vim tabs Vim 支持 Tabs,也就是标签页 ...

  3. 1-27 sed基本编程和cut基本应用

    大纲: 一.sed基本编程 sed详解.Usage.操作实例 二.cut命令应用 cut命令详解.Usage.操作实例 ######################################## ...

  4. 如何把数字字符'1'转换为整数(java 实现)

    在一些表达式计算时,如 “3+2”    表达式自身是个字符串,通过切片得到的是数字字符和操作符,不能直接进行计算,在表达式计算中需要进行一步操作是,把数字字符'2','3'转化为整数. 如何操作? ...

  5. Nginx启动/重启失败

    解决方案: Nginx启动或重启失败,一般是因为配置文件出错了,我们可以使用nginx -t方法查看配置文件出错的地方.也可以通过查看Nginx日志文件定位到Nginx重启失败的原因,Nginx日志文 ...

  6. poj3068

    题解: 最小费用最大流 每一次找最短的 代码: #include<cstdio> #include<cmath> #include<cstring> #includ ...

  7. XML方式实现Spring的AOP

    1.编写切面类 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 package com.fz.an ...

  8. C++面向对象高级编程(五)类与类之间的关系

    技术在于交流.沟通,转载请注明出处并保持作品的完整性. 本节主要介绍一下类与类之间的关系,也就是面向对象编程先介绍两个术语 Object Oriented Programming   OOP面向对象编 ...

  9. cookie注入原理及注入检测

    通常我们的开发人员在开发过程中会特别注意到防止恶意用户进行恶意的注入操作,因此会对传入的参数进行适当的过滤,但是很多时候,由于个人对安全技术了解的不同,有些开发人员只会对get,post这种方式提交的 ...

  10. node csrf 防御 待续

    csrf 防御 token 与 ajax 主要是在cookie添加随机数, 因为攻击者 无法访问第三方网站的 cookie,  加上httponly, 即使是xss也无法访问了 也可以在页面上嵌入一个 ...