1. 时间模块
    模块名:time
    时间模块的转换流程图。

  1. UTC:英国格林威治时间。
    时间戳作用:是用来进行时间计算的。进行加减时间。
    注意:时间计算是用秒为单位
    time.process_time():测量处理器运算时间,不包括sleep时间。
    time.altzone:返回与utc时间的时间差,以秒计算。print(time.altzone) 结果:14400
    time.asctime():返回时间格式。'Tue May 9 02:19:05 2017'
    time.ctime():返回当前时间。 'Tue May 9 02:55:11 2017'
    time.localtime():将时间戳转换为当前时间元组
  1. time.struct_time(tm_year=2017, tm_mon=5, tm_mday=9, tm_hour=2, tm_min=25, tm_sec=15, tm_wday=1, tm_yday=129, tm_isdst=1)
    提取方法:print(t.tm_year)
    如果增加3小时:
    time.localtime(time.time + 3600*3)
    time.time():打印的是时间戳,从19701100:00:00到现在为止一共的时间数(单位为秒),表现为:1494311684.9523735
  1. 为什么是1970年,因为把这个时间作为unix的诞生元年。
    time.gmtime():将时间戳转换为时间对象
    time.struct_time(tm_year=2017, tm_mon=5, tm_mday=9, tm_hour=6, tm_min=38, tm_sec=19, tm_wday=1, tm_yday=129, tm_isdst=0)
    time.mktime():将时间对象转换为时间戳
  2.  
  3. time.strptime():将指定格式的时间字符串转换为时间对象
    time.strftime():将时间对象转换为指定格式的时间字符串

时间参数参考
1 %a 本地(locale)简化星期名称
2 %A 本地完整星期名称
3 %b 本地简化月份名称
4 %B 本地完整月份名称
5 %c 本地相应的日期和时间表示
6 %d 一个月中的第几天(01 - 31)
7 %H 一天中的第几个小时(24小时制,00 - 23)
8 %I 第几个小时(12小时制,01 - 12)
9 %j 一年中的第几天(001 - 366)
10 %m 月份(01 - 12)
11 %M 分钟数(00 - 59)
12 %p 本地am或者pm的相应符
13 %S 秒(01 - 61)
14 %U 一年中的星期数。(00 - 53星期天是一个星期的开始。)第一个星期天之前的所有天数都放在第0周。
15 %w 一个星期中的第几天(0 - 6,0是星期天)
16 %W 和%U基本相同,不同的是%W以星期一为一个星期的开始。
17 %x 本地相应日期
18 %X 本地相应时间
19 %y 去掉世纪的年份(00 - 99)
20 %Y 完整的年份
21 %Z 时区的名字(如果不存在为空字符)
22 %% ‘%’字符

  1. 举例:将指定时间减3小时然后打印出时间字符串
    方法1
  1. import time
  2. # 将字符串时间转换为时间对象
  3. t1=time.strptime('2016-05-09 16:34','%Y-%m-%d %H:%M')
  4. # 将t1时间对象转换为时间戳,通过减2小时运算后,在转换成时间对象。
  5. # 注意:最后的加8小时是因为转换为时间戳后,系统会自动根据所属区域进行换算,中国就会自动减8小时,所以我这里手工要加8小时
  6. t2=time.gmtime(time.mktime(t1) - 3600*2 + 3600*8)
  7. # 将运算后的时间对象转换为时间字符串打印
  8. print(time.strftime('%Y-%m-%d %H;%M',t2))
  1. 方法2
    # 以上方法是用time.localtime() 就可以不用单独加8小时
  1. # 先转换为时间对象
  2. t1=time.strptime('2016-05-09 16:34','%Y-%m-%d %H:%M')
  3. # 这里使用localtime 将时间戳运算后,在转换为时间对象
  4. t2=time.localtime(time.mktime(t1)-3600*2)
  5. # 将时间对象转换为时间字符串打印
  6. print(time.strftime('%Y-%m-%d %H;%M',t2))
  1. 举例2:使用time模块显示前一天的日期
  1. import time
  2. #这个可以打印昨天的这个时间
  3. print(time.strftime('%Y-%m-%d %H:%M',time.gmtime(time.time()-3600*24+3600*8)))
  4. #这个可以打印昨天的日期
  5. print(time.strftime('%Y-%m-%d',time.gmtime(time.time()-3600*24+3600*8)))
  1.  
  2. 模块名:datetime
    datetime.datetime.now():打印当前时间。 datetime.datetime(2017, 5, 9, 4, 3, 56, 976793)
    datetime.date.fromtimestamp(time.time()):将时间戳直接转换为日期。 2017-05-09
    datetime.datetime.now() + datetime.timedelta(3): 当前时间加3
    datetime.datetime.now() + datetime.timedelta(-3):当前时间减3
    datetime.datetime.now() + datetime.timedelta(hours=3):当前时间加3小时
    datetime.datetime.now() + datetime.timedelta(minutes=3):当前时间加3分钟
    时间替换方法:
    t = datetime.datetime.now() #首先获取当前时间
    print(t.replace(year=2015,month=3)) #这里指定替换年为2015,月为3月。 替换参数可以参考帮助。
  3.  
  4. 时间转换处理实例:
  1. import datetime
  2. # 获取当前时间
  3. d1 = datetime.datetime.now()
  4. print d1
  5. # 当前时间加上半小时
  6. d2 = d1 + datetime.timedelta(hours=0.5)
  7. print d2
  8. # 格式化字符串输出
  9. d3 = d2.strftime('%Y-%m-%d %H:%M:%S')
  10. print d3
  11. # 将字符串转化为时间类型
  12. d4 = datetime.datetime.strptime(date,'%Y-%m-%d %H:%M:%S.%f')
  13. print d4

提取本月的第一天

datetime.datetime.today() - datetime.timedelta(days=datetime.datetime.now().day - 1)

python学习之 - 时间模块的更多相关文章

  1. python学习-46 时间模块

    时间模块 ····时间戳 print(time.time()) 运行结果: 1564294158.0389376 Process finished with exit code 0 ·····结构化时 ...

  2. python学习总结----时间模块 and 虚拟环境(了解)

    time - sleep:休眠指定的秒数(可以是小数) - time:获取时间戳 # 获取时间戳(从1970-01-01 00:00:00到此刻的秒数) t = time.time() print(t ...

  3. Python学习 Part4:模块

    Python学习 Part4:模块 1. 模块是将定义保存在一个文件中的方法,然后在脚本中或解释器的交互实例中使用.模块中的定义可以被导入到其他模块或者main模块. 模块就是一个包含Python定义 ...

  4. python学习之argparse模块

    python学习之argparse模块 一.简介: argparse是python用于解析命令行参数和选项的标准模块,用于代替已经过时的optparse模块.argparse模块的作用是用于解析命令行 ...

  5. Python学习day19-常用模块之re模块

    figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...

  6. Python学习day18-常用模块之NumPy

    figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...

  7. python学习之random模块

    Python中的random模块用于生成随机数.下面介绍一下random模块中最常用的几个函数. random.random random.random()用于生成一个0到1的随机符点数: 0 < ...

  8. python学习笔记013——模块

    1 模块module 1.1 模块是什么 模块是包含一系列的变量,函数,类等程序组 模块通常是一个文件,以.py结尾 1.2 模块的作用 1. 让一些相关的函数,变量,类等有逻辑的组织在一起,使逻辑更 ...

  9. Python学习笔记-常用模块

    1.python模块 如果你退出 Python 解释器并重新进入,你做的任何定义(变量和方法)都会丢失.因此,如果你想要编写一些更大的程序,为准备解释器输入使用一个文本编辑器会更好,并以那个文件替代作 ...

随机推荐

  1. Android里的 ART、JIT、AOT、Dalvik之间有什么关系?

    ART.JIT.AOT.Dalvik之间有什么关系? JIT与Dalvik JIT是"Just In Time Compiler"的缩写,就是"即时编译技术", ...

  2. 洛谷 P2894 [USACO08FEB]酒店Hotel

    题目描述 The cows are journeying north to Thunder Bay in Canada to gain cultural enrichment and enjoy a ...

  3. Python3基础教程(十六)—— 迭代器、生成器、装饰器

    在这个实验里我们学习迭代器.生成器.装饰器有关知识. 这几个概念是 Python 中不容易理解透彻的概念,务必把所有的实验代码都完整的输入并理解清楚其中每一行的意思. 迭代器 Python 迭代器(I ...

  4. Python3简明教程(六)—— 数据结构

    简单的来说,数据结构(data structure)是计算机中存储.组织数据的方式.比如我们之前使用过的列表就是一种数据结构,在这里我们还会深入学习它.之前也有简单的介绍. 列表 >>&g ...

  5. Visual Studio中Radio Button组绑定变量方法(DDX_Radio方法)

    需求描述:Visual Studio 创建的界面程序中又许多 Radio Button,希望这些所有的Radio Button统一绑定到一个变量上,这个变量一旦改变,Radio Button的选中状态 ...

  6. 性能测试,如何得到大量token,并保存在本地文件中

    需求:性能测试需要大量的token,模拟登陆 设计思路: 1.使用语言:python +request+正则匹配+写入本地 2.jmeter+函数助手+正则或者json/yaml+后置处理器beans ...

  7. 第1节 flume:6、flume的入门测试案例

    案例:使用网络telent命令向一台机器发送一些网络数据,然后通过flume采集网络端口数据. 1.2.1 Flume的安装部署 第一步:下载解压修改配置文件 Flume的安装非常简单,只需要解压即可 ...

  8. RN传参的问题

    RN父组件通过props属性给子组件传参,假设参数 target={target} 子组件在render函数里 let { target } = this.props; 如果子组件有个 FlatLis ...

  9. [LUOGU] P3611 [USACO17JAN]Cow Dance Show奶牛舞蹈

    https://www.luogu.org/problemnew/show/P3611 二分答案+优先队列 二分O(logn) 判一次正确性O(nlogn) 总体O(nlognlogn) 为了让pri ...

  10. [LUOGU] P1962 斐波那契数列

    求斐波那契第n项. [f(n-1) f(n)] * [0,1] = [f(n) f(n+1)] [1,1] 由此原理,根据矩阵乘法的结合律,用快速幂算出中间那个矩阵的n次方即可. 快速幂本质和普通快速 ...