time模块

  time模块通常用来操作时间戳信息(各种“秒”),常用的方法有:

  • time.sleep(seconds):将当前程序阻塞指定秒数,然后继续运行程序。
  • time.time():返回当前时间的时间戳,即1970年到现在经过的浮点秒数。
  • time.struct_time:struct_time类初始化时需要传入一个由9个时间信息组成的元组,该元组的时间信息依次为:tm_year=2018(年),tm_mon=8(月),tm_mday=8(日),tm_hour=23(时),tm_min=38(分),tm_sec=54(秒),tm_wday=2(星期,星期一为0),tm_yday=220(一年中的第几天),tm_isdst=0(1表示支持夏令时,0表示不支持夏令时,-1表示未知)。当然,一个对象是struct_time对象,可以通过属性的方式获取这些值,比如:time.localtime().tm_year。
  • time.localtime(seconds=None):返回当前时间的struct_time对象,也可以指定秒数seconds(默认采用time.time()的int值),则返回1970加上指定秒数后的struct_time对象。
  • time.mktime(p_tuple):将struct_time对象(元组)转换为时间戳,然后返回。
  • time.strptime(string, format):将时间字符串string按照指定格式format转化成struct_time对象,如:time.strptime('2016-09-04', '%Y-%m-%d')
  • time.strftime(format, p_tuple=None):将struct_time对象(元组)转换成指定格式的字符串,默认使用time.localtime()的结果来进行转换,如:time.strftime('%Y-%m-%d %H:%M:%S', time.localtime())。

  注:方法中的参数p_tuple表示可以是struct_time对象,也可以是满足struct_time对象初始化的时间信息元组,其实struct_time对象就可以看成是一个由时间信息组成的元组

>>> import time
>>> # time.time()方法,返回当前时间的时间戳(1970年到现在经过的浮点秒数)
>>> time.time()
1473691580.9504104
>>> # time.struct_time对象,存储时间信息
>>> structtime_obj = time.struct_time((2018, 8, 8, 23, 38, 54, 2, 220, 0))
>>> structtime_obj
time.struct_time(tm_year=2018, tm_mon=8, tm_mday=8, tm_hour=23, tm_min=38, tm_sec=54, tm_wday=2, tm_yday=220, tm_isdst=0)
>>> structtime_obj.tm_year
2018
>>> # time.localtime()方法,默认返回即当前时间(time.time()的int值)的struct_time对象
>>> time.localtime()
time.struct_time(tm_year=2018, tm_mon=8, tm_mday=8, tm_hour=23, tm_min=22, tm_sec=2, tm_wday=2, tm_yday=220, tm_isdst=0)
>>> time.localtime(time.time())
time.struct_time(tm_year=2018, tm_mon=8, tm_mday=8, tm_hour=23, tm_min=22, tm_sec=2, tm_wday=2, tm_yday=220, tm_isdst=0)
>>> time.localtime(80000)
time.struct_time(tm_year=1970, tm_mon=1, tm_mday=2, tm_hour=6, tm_min=13, tm_sec=20, tm_wday=4, tm_yday=2, tm_isdst=0)
>>> # time.mktime()方法,将struct_time对象转换成时间戳
>>> time.mktime(time.localtime())
1533746402.0
>>> # time.strptime()方法,将字符串按照指定格式转换为struct_time对象
>>> time.strptime('2016-09-04', '%Y-%m-%d')
time.struct_time(tm_year=2016, tm_mon=9, tm_mday=4, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=6, tm_yday=248, tm_isdst=-1)
>>> # time.strftime()方法,将struct_time对象转换成指定格式的字符串
>>> time.strftime('%Y-%m-%d %H:%M:%S', time.localtime())
'2018-08-09 00:43:04'

datetime模块  

  datetime模块通常用来操作日期信息(年月日和时分秒),常用的方法有:

  • datetime.datetime.now():返回当前日期时间的datetime对象,对象中包含年月日和时分秒信息,可通过str它来得到日期时间信息的字符串。
  • datetime.datetime.fromtimestamp(timestamp):将时间戳转换成datetime对象,并返回。
  • datetime.datetime.strptime(date_string, format):将字符串按照指定格式转成datetime对象,并返回,如:datetime.datetime.strptime('2016-09-04', '%Y-%m-%d')。
  • datetime.datetime.strftime(datetime, format):将datetime对象转换为指定格式的字符串,并返回,如:datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d %H:%M:%S')。
  • datetime.timedelta:timedelta对象初始化时指定日期时间信息,可用它与datetime对象进行加减操作,并返回新的datetime对象,当然timedelta对象之间也可以进行加减操作,返回新的timedelta对象。
  • timetuple():将datetime对象转换成struct_time对象,并返回。
>>> import datetime
>>> # now()方法,返回当期时间的datetime对象,可通过str得到日期时间信息的字符串
>>> datetime_now = datetime.datetime.now()
>>> datetime_now
datetime.datetime(2018, 8, 9, 0, 59, 3, 487000)
>>> str(datetime_now)
'2018-08-09 00:59:03.487000'
>>> # fromtimestamp()方法,将时间戳转换成datetime对象,并返回
>>> datetime.datetime.fromtimestamp(time.time())
datetime.datetime(2018, 8, 9, 1, 2, 51, 546000)
>>> # strptime()方法,将字符串按照指定格式转成datetime对象
>>> datetime.datetime.strptime('2016-09-04', '%Y-%m-%d')
datetime.datetime(2016, 9, 4, 0, 0)
>>> # strftime()方法,将datetime对象转换为指定格式的字符串,并返回
>>> datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d %H:%M:%S')
'2018-08-09 01:18:10'
>>> # timedelta对象,可用于日期时间信息的加减操作
>>> timedelta_hour = datetime.timedelta(hours=4)
>>> timedelta_day = datetime.timedelta(days=8)
>>> timedelta_new = timedelta_hour + timedelta_day
>>> timedelta_hour
datetime.timedelta(0, 14400)
>>> timedelta_day
datetime.timedelta(8)
>>> timedelta_new
datetime.timedelta(8, 14400)
>>> datetime.datetime.now()
datetime.datetime(2018, 8, 9, 1, 30, 0, 593000)
>>> datetime_new = datetime.datetime.now() + timedelta_new
>>> datetime_new
datetime.datetime(2018, 8, 17, 5, 30, 1, 70000)
>>> # timetuple()方法,将datetime对象转换成struct_time对象
>>> now_datetime = datetime.datetime.now()
>>> now_datetime.timetuple()
time.struct_time(tm_year=2018, tm_mon=8, tm_mday=9, tm_hour=2, tm_min=5, tm_sec=50, tm_wday=3, tm_yday=221, tm_isdst=-1)
日期时间格式化字符串
%a         星期的缩写。如星期三Wed
%A 星期的全名。如星期三Wednesday
%b 月份的缩写。如四月份Apr
%B 月份的全名。如4月份April
%c 日期和时间字符串表示。如04/07/10 10:43:39
%d 每月的第几天
%p AM或PM
%H 小时(24小时格式)
%I 小时(12小时格式)
%j 一年中的第几天
%m 月份
%M 分钟
%S
%f 微秒
%U 一年中的第几周(星期天为一周的第一天,新的一年的第一个星期天被认为是第0周的开始)
%w 星期几(星期天为0)
%W 一年中的第几周(星期一为一周的第一天,新的一年的第一个星期一被认为是第0周的开始)
%x 日期字符串
%X 时间字符串
%y 年份(不含世纪,即两个数字表示)
%Y 年份(含世纪,即4个数字表示)
%Z 时区名称
%z Time zone offset indicating a positive or negative time difference from UTC/GMT of the form +HHMM or -HHMM, where H represents decimal hour digits and M represents decimal minute digits [-23:59, +23:59].
%%

百分号“%”

Python学习笔记:time模块和datetime模块(时间和日期)的更多相关文章

  1. python学习笔记(13)常用模块列表总结

    os模块: os.remove() 删除文件 os.unlink() 删除文件 os.rename() 重命名文件 os.listdir() 列出指定目录下所有文件 os.chdir() 改变当前工作 ...

  2. python学习笔记(26)-request模块

    python学习笔记 #requests import requests #from class_005.http_resuest import HttpRequest login_url = &qu ...

  3. python学习笔记:网络请求——urllib模块

    python操作网络,也就是打开一个网站,或者请求一个http接口,可以使用urllib模块.urllib模块是一个标准模块,直接import urllib即可,在python3里面只有urllib模 ...

  4. python学习笔记(12)常用模块

    一.模块.包 什么是模块? 模块实质上就是一个python文件,它是用来组织代码的,意思就是说把python代码写到里面,文件名就是模块的名称,test.py test就是模块名称. 什么是包? 包, ...

  5. python学习笔记系列----(四)模块

    这一章主要是叙述了python模块的概念以及包的概念,还有它们的使用:收获也是大大的. 提起python文件,经常会听到3个名词,python脚本,python模块,python包.脚本的概念是从py ...

  6. Python学习笔记总结(二)函数和模块

    一.函数 函数的作用:可以计算出一个返回值,最大化代码重用,最小化代码冗余,流程的分解. 1.函数相关的语句和表达式 语句        例子 Calls        myfunc(‘diege', ...

  7. Python学习笔记4(函数与模块)

    1.Python程序的结构 Python的程序由包(package).模块(module)和函数组成. 模块是处理一类问题的集合,由函数和类组成. 包是由一系列模块组成的集合.包是一个完成特定任务的工 ...

  8. python学习笔记:第八天(模块)

    Python3 模块 脚本上是用 python 解释器来编程,如果从 Python 解释器退出再进入,那么定义的所有的方法和变量就都消失了. 为此 Python 提供了一个办法,把这些定义存放在文件中 ...

  9. python学习笔记:(十一)模块

    模块是指一个包含定义的函数和变量的文件,其后缀名为.py.模块可以被别的程序引用,并使用其中的函数等功能. 1.import语句 如果需要使用模块,只需要在新模块中导入模块.使用import关键字 如 ...

  10. python学习笔记(十三)处理时间模块

    import time time.sleep(2)#等待几秒 时间的三种表现方式: 1.格式化好的时间 2018-1-14 16:12 2.时间戳 是从unix元年到现在所有的秒数 3.时间元组 想时 ...

随机推荐

  1. Netty(5)@Sharable

    问题:我写了MyDecoder which extends ByteToMessageDecoder,单线程没问题,但是多线程时,报'the handler should be sharable'.查 ...

  2. <pre></pre>标签自动换行

    原文地址:https://www.cnblogs.com/qq78292959/p/4193142.html   pre { white-space: pre-wrap; word-wrap: bre ...

  3. python 6 循环

    循环 要计算1+2+3,我们可以直接写表达式: >>> 1 + 2 + 3 6 要计算1+2+3+...+10,勉强也能写出来. 但是,要计算1+2+3+...+10000,直接写表 ...

  4. Spark Mllib里如何对决策树二元分类和决策树多元分类的分类数目numClasses控制(图文详解)

    不多说,直接上干货! 决策树二元分类的分类数目numClasses控制 具体,见 Hadoop+Spark大数据巨量分析与机器学习整合开发实战的第13章 使用决策树二元分类算法来预测分类Stumble ...

  5. IO(File、递归)

      第1章 File 1.1 IO概述 回想之前写过的程序,数据都是在内存中,一旦程序运行结束,这些数据都没有了,等下次再想使用这些数据,可是已经没有了.那怎么办呢?能不能把运算完的数据都保存下来,下 ...

  6. ecshop分类页把分类描述改成FCKeditor编辑器

    最近放一个网站 http://www.macklin.cn/productline/35 有个产品分类页面需要添加分类缩略图和图文的描述 一.首先说下添加分类缩略图的步骤吧 1,依葫芦画瓢,参照的是e ...

  7. JavaScript是什么

    JavaScript是一种解释型语言而不是编译型语言,它往往被认为是一种脚本语言,而不被看作是一种真正的编程语言.也就是说,脚本语言比较简单,它们是非程序员所使用的编程语言. 如果一个程序员对Java ...

  8. jsp跳转标签<jsp:forward>

    forward.jsp <%@ page language="java" contentType="text/html; charset=utf-8" p ...

  9. 【exFat】利用命令提示符在windows 7 及 windows server 2008 r2 中将卷(分区)格式化为exFAT

    步骤 运行cmd.exe: 查看磁盘信息.输入diskpart并回车: 选择磁盘.输入select disk 0(“0”代表要选择的磁盘号)并回车: 查看所选硬盘的分区.输入list partitio ...

  10. python基础教程总结13——网络编程,

    1.网络设计模块 1.1 socket模块    根据连接启动的方式以及本地套接字要连接的目标,套接字之间的连接过程可以分为三个步骤:服务器监听,客户端请求,连接确认. 1)服务器监听:是服务器端套接 ...