一、time

1、获取当前时间和时区

  1. >>> now = time.time() # 当前时间 float类型
  2. >>> time.strftime("%Y-%m-%d %H:%M:%S") #当前时间 str
  3. '2016-11-04 15:29:58'
  4.  
  5. >>> time.ctime() # 当前时间 english str
  6. 'Fri Nov 4 15:40:42 2016'
  7.  
  8. >>> time.time()
  9. 1478244363.875308
  10. >>> time.localtime() # 当前时间 time结构体
  11. time.struct_time(tm_year=2016, tm_mon=11, tm_mday=4, tm_hour=15, tm_min=26, tm_sec=9, tm_wday=4, tm_yday=309, tm_isdst=0)
  12.  
  13. >>> time.localtime(now) # float -> struct_time
  14. time.struct_time(tm_year=2016, tm_mon=11, tm_mday=4, tm_hour=15, tm_min=26, tm_sec=1, tm_wday=4, tm_yday=309, tm_isdst=0)
  15.  
  16. >>> time.strftime('%Z', time.localtime()) # 显示当前时区 China standard timezone
  17. 'CST'
  18. >>> time.gmtime() # 显示UTC标准时间 跟中国相差8个钟
  19. time.struct_time(tm_year=2016, tm_mon=11, tm_mday=4, tm_hour=7, tm_min=26, tm_sec=28, tm_wday=4, tm_yday=309, tm_isdst=0)

其中time.time()返回的一个float型,是从1970年1月1日0时起到当前经过的秒数,注意这里是分时区的

time.localtime()返回的是一个time结构体,其中包括tm_year,tm_mon,tm_mday,tm_hour,tm_min,tm_sec,tm_wday,tm_yday,tm_isdst=0(夏令时间标志)

  2、时间字符串转成time格式

  1. >>> a = '2016-11-04 15:29:58'
  2. >>> time.strptime(a, "%Y-%m-%d %H:%M:%S")
  3. time.struct_time(tm_year=2016, tm_mon=11, tm_mday=4, tm_hour=15, tm_min=29, tm_sec=58, tm_wday=4, tm_yday=309, tm_isdst=-1)

  3、时间字符串转成float类型

  1. >>> a = '2016-11-04 15:29:58'
  2. >>> time.mktime(time.strptime(a, "%Y-%m-%d %H:%M:%S"))
  3. 1478244598.0

  4、time tuple格式转成字符串

  1. >>> time_tuple = (2016, 11, 04, 13, 51, 18, 2, 317, 0)
  2. >>> time.strftime("%Y-%m-%d %H:%M:%S", time_tuple)
  3. '2016-11-04 13:51:18'

  5、float类型转成时间字符串

  1. >>> a = 1478244598.0
  2. >>> b = time.localtime(a)
  3. >>> time.strftime("%Y-%m-%d %H:%M:%S", b)
  4. '2016-11-04 15:29:58'

  6、时间和日期格式化符号说明

  1. %y 两位数的年份表示(-)
  2. %Y 四位数的年份表示(-)
  3. %m 月份(-)
  4. %d 月内中的一天(-)
  5. %H 24小时制小时数(-)
  6. %I 12小时制小时数(-)
  7. %M 分钟数(=)
  8. %S 秒(-)
  9.  
  10. %a 本地简化星期名称
  11. %A 本地完整星期名称
  12. %b 本地简化的月份名称
  13. %B 本地完整的月份名称
  14. %c 本地相应的日期表示和时间表示
  15. %j 年内的一天(-)
  16. %p 本地A.M.或P.M.的等价符
  17. %U 一年中的星期数(-)星期天为星期的开始
  18. %w 星期(-),星期天为星期的开始
  19. %W 一年中的星期数(-)星期一为星期的开始
  20. %x 本地相应的日期表示
  21. %X 本地相应的时间表示
  22. %Z 当前时区的名称
  23. %% %号本身

  二、datetime

  1、获取当前时间

  1. >>> datetime.datetime.now() # datetime tuple
  2. datetime.datetime(2016, 11, 4, 15, 52, 17, 680405)
  3.  
  4. >>> time.mktime(datetime.datetime.now().timetuple()) # float类型
  5. 1478245984.0
  6. >>> datetime.datetime.now().replace(second=0, microsecond=0) # 秒数为0 毫秒数为0
  7. datetime.datetime(2016, 11, 4, 15, 54)
  8.  
  9. >>> datetime.date.today() # 当前天
  10. datetime.date(2016, 11, 4)

  2、datetime tuple转成时间字符串

  1. >>> now = datetime.datetime.now()
  2. >>> now.strftime("%Y-%m-%d %H:%S:%M")
  3. '2016-11-04 16:06:00'

  3、datetime tuple转成float类型

  1. >>> now = datetime.datetime.now()
  2. >>> time.mktime(now.timetuple())
  3. 1478246406.0

  4、datetime date和time转换

  1. >>> a = datetime.date(2016, 11, 4)
  2. >>> datetime.datetime.strptime(str(a),'%Y-%m-%d')
  3. datetime.datetime(2016, 11, 4, 0, 0)
  4. >>> a
  5. datetime.date(2016, 11, 4)

  5、获取当前时间的前一段时间

  1. now = datetime.datetime.now()
  2.  
  3. # 前一小时
  4. a = now - datetime.timedelta(hours=1)
  5. print a.strftime("%Y-%m-%d %H:%S:%M")
  6.  
  7. # 前一天
  8. b = now - datetime.timedelta(days=1)
  9. print b.strftime("%Y-%m-%d %H:%S:%M")
  10.  
  11. # 上周日
  12. c = now - datetime.timedelta(days=now.isoweekday())
  13. print c.strftime("%Y-%m-%d %H:%S:%M")# 上周一
  14. d = c - datetime.timedelta(days=6)
  15. print d.strftime("%Y-%m-%d %H:%S:%M")# 上个月最后一天
  16. e = now - datetime.timedelta(days=now.day)
  17. print e.strftime("%Y-%m-%d %H:%S:%M")
  18.  
  19. # 上个月第一天
  20. print datetime.datetime(e.year, e.month, 1)

  6、获取两个时间相差的秒数

  1. (datetime.datetime.now() - datetime.datetime(1970, 1,1,0, 0, 0,0)).total_seconds() # 获取的是UTC标准时区的时间float类型

原创文章,转载请备注原文地址 http://www.cnblogs.com/lxmhhy/p/6030730.html

python time和datetime的常用转换处理的更多相关文章

  1. Python处理时间 time && datetime 模块

    Python处理时间 time  &&  datetime 模块 个人整理,获取时间方式: import datetime import time #获取当前时间:Thu Nov 03 ...

  2. python之路,Day24 常用设计模式学习

    python之路,Day24 常用设计模式学习   本节内容 设计模式介绍 设计模式分类 设计模式6大原则 1.设计模式介绍 设计模式(Design Patterns) --可复用面向对象软件的基础 ...

  3. python 3.x 爬虫基础---常用第三方库(requests,BeautifulSoup4,selenium,lxml )

    python 3.x 爬虫基础 python 3.x 爬虫基础---http headers详解 python 3.x 爬虫基础---Urllib详解 python 3.x 爬虫基础---常用第三方库 ...

  4. 『Python基础-5』数字,运算,转换

    『Python基础-5』数字,运算,转换 目录 基本的数字类型 二进制,八进制,十六进制 数字类型间的转换 数字运算 1. 数字类型 Python 数字数据类型用于存储数学上的值,比如整数.浮点数.复 ...

  5. C# MVC 用户登录状态判断 【C#】list 去重(转载) js 日期格式转换(转载) C#日期转换(转载) Nullable<System.DateTime>日期格式转换 (转载) Asp.Net MVC中Action跳转(转载)

    C# MVC 用户登录状态判断   来源:https://www.cnblogs.com/cherryzhou/p/4978342.html 在Filters文件夹下添加一个类Authenticati ...

  6. python学习二,字符串常用操作

    字符串可以说是在日常开发中应用最广泛的了,现在来总结下有关python中有关字符串一些常用操作 首先我们声明一个字符串变量 str = "hello world" 下面我们来依次介 ...

  7. python 之 Django框架(ORM常用字段和字段参数、关系字段和和字段参数)

    12.324 Django ORM常用字段 .id = models.AutoField(primary_key=True):int自增列,必须填入参数 primary_key=True.当model ...

  8. Python时间模块datetime用法

    时间模块datetime是python内置模块,datetime是Python处理日期和时间的标准库. 1,导入时间模块 from datetime import datetime 2,实例 from ...

  9. JavaScript 解析 Django Python 生成的 datetime 数据 时区问题解决

    JavaScript 解析 Django/Python 生成的 datetime 数据 当Web后台使用Django时,后台生成的时间数据类型就是Python类型的. 项目需要将几个时间存储到数据库中 ...

随机推荐

  1. WebSocket 介绍(一)

    WebSocket 发起单个请求,服务端不需要等待客服端,客户端在任何时候也能发消息到服务端,减少了轮询时候的延迟.经历一次连接后,服务器能给客户端发多次.下图是轮询与WebSocket的区别. 基于 ...

  2. 与类相关基本概念----Beginning Visual C#

    span.kw { color: #007020; font-weight: bold; } code > span.dt { color: #902000; } code > span. ...

  3. Elasticsearch+Logstash+Kibana教程

    参考资料 累了就听会歌吧! Elasticsearch中文参考文档 Elasticsearch官方文档 Elasticsearch 其他——那些年遇到的坑 Elasticsearch 管理文档 Ela ...

  4. 7.5 数据注解特性--MaxLength&&MinLength

    MaxLength attribute can be applied to a string or array type property of a domain class. EF Code Fir ...

  5. Nancy之静态文件处理

    今天我们来谈谈Nancy中的静态文件(JavaScript,CSS等)该如何处理. 在前面的Demo中,我们也已经用到了这一块的内容, 但并没有深入理解,只是停留在使用的层面上. 在进入今天的正题之前 ...

  6. 自己实现简单的AOP(二)引入Attribute 为方法指定增强对象

    话续前文 : 自己实现简单的AOP(一)简介 在前一篇文章中,对AOP的实现方式做了一个简单介绍.接下来,引入Attribute 为方法指定增强对象,由此实现一个简单的AOP. 注意:指定的是增强对象 ...

  7. Genesis2000用c#开发外挂

    先上官方的说明 gateway is a command line utility for sending messages and commands to Genesis processes. Th ...

  8. 1、怎样设置C#OpenFileDialog(文件选择窗体)的指定路径、文件格式等属性(设置打开默认路径、文件格式、窗体显示文本)

    C#的OpenFileDialog的常用属性设置 1.设置属性 1)设置弹出的指定路径(绝对路径.相等路径) 2)设置标题 3)设置文本格式 2.打开方式1(绝对路径) 2.1) 打开的路径

  9. [函数] Delphi FMX Windows 取得下载 Downloads 目录

    在 Firemonkey 提供了一个跨平台的函数 TPath.GetDownloadsPath 来取得该平台的下载目录,但是非常奇怪的是,在 Windows 平台下,取得的下载目录确是: C:\Use ...

  10. 领域驱动设计常见问题FAQ

    本文出处:http://www.cqrs.nu/Faq What is a domain? The field for which a system is built. Airport managem ...