前言

python中常常会遇见时间、日期相关的处理,python标准库其实就提供了非常强大的处理能力,它们是time、datetime、calendar标准库,下面是它们常见的一些用法,一起来看看吧!

目录

一、time库

二、datetime

三、calendar

一、time库

(1)time.localtime([secs])

将一个时间戳转换为当前时区的struct_time。secs参数未提供,则以当前时间为准。

时间戳(timestamp)的方式:通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。

(2)time.time()

用来返回当前时间的时间戳

(3)time.mktime(t)

将一个struct_time转化为时间戳。

def subtime(date1,date2):    date1=time.strptime(date1,"%Y-%m-%d  %H:%M:%S")    date2=time.strptime(date2,"%Y-%m-%d  %H:%M:%S")    t1 = time.mktime(date1)    t2 = time.mktime(date2)return t2-t1    自己有用到的一个函数计算时间差,把字符串转化成时间戳进行计算

(4)time.sleep(secs)

线程推迟指定的时间运行。单位为秒。

(5)time.clock()

这个需要注意,在不同的系统上含义不同。在UNIX系统上,它返回的是“进程时间”,它是用秒表示的浮点数(时间戳)。而在WINDOWS中,第一次调用,返回的是进程运行的实际时间。而第二次之后的调用是自第一次调用以后到现在的运行时间。

(6)time.asctime([t])

把一个表示时间的元组或者struct_time表示为这种形式:‘Sun Jun 20 23:21:05 1993’。如果没有参数,将会将time.localtime()作为参数传入。

(7)time.ctime([secs])

(8)time.strftime(format[, t])

把一个代表时间的元组或者struct_time(如由time.localtime()和time.gmtime()返回)转化为格式化的时间字符串。如果t未指定,将传入time.localtime()。如果元组中任何一个元素越界,ValueError的错误将会被抛出。

(9)time.strptime(string[, format])

把一个格式化时间字符串转化为struct_time。实际上它和strftime()是逆操作。

'''把一个格式化时间字符串转化为struct_time。实际上它和strftime()是逆操作。%a  本地(locale)简化星期名称    %A    本地完整星期名称    %b    本地简化月份名称    %B    本地完整月份名称    %c    本地相应的日期和时间表示    %d    一个月中的第几天(01 - 31)   %H    一天中的第几个小时(24小时制,00 - 23) %I    第几个小时(12小时制,01 - 12) %j    一年中的第几天(001 - 366)  %m    月份(01 - 12) %M    分钟数(00 - 59)    %p    本地am或者pm的相应符    一%S   秒(01 - 61)  二%U   一年中的星期数。(00 - 53星期天是一个星期的开始。)第一个星期天之前的所有天数都放在第0周。   %w    一个星期中的第几天(0 - 6,0是星期天)%W   和%U基本相同,不同的是%W以星期一为一个星期的开始。  %x    本地相应日期  %X    本地相应时间  %y    去掉世纪的年份(00 - 99)    %Y    完整的年份   %Z    时区的名字(如果不存在为空字符)    %%    ‘%’字符以上是一些时间格式的表示方法'''

(10)时间、字符串、结构体三者之间的转化关系

二、datetime

datetime 比 time 高级了不少,可以理解为 datetime 基于 time 进行了封装,提供了更多实用的函数。

2.1 datetime中的常见类

(1)datetime.date        表示日期,常用的属性有:year, month和day

(2)datetime.time       表示时间,常用属性有:hour, minute, second,                               microsecond

(3)datetime.datetime 表示日期时间

(4)datetime.timedelta 表示两个date、time、datetime实例之间的时间间隔,分辨率(最小单位)可达到微秒

(5)datetime.tzinfo 时区相关信息对象的抽象基类。它们由datetime和time类使用,以提供自定义时间的而调整。

datetime.year 年datetime.month  月datetime.day  日datetime.hour  小时datetime.minute  分钟datetime.second  秒datetime.microsecond 毫秒 datetime.date() # 返回 date 对象datetime.time() # 返回 time 对象datetime.replace(name=value) # 前面所述各项属性是 read-only 的,需要此方法才可更改datetime.timetuple() # 返回time.struct_time 对象dattime.strftime(format) # 按照 format 进行格式化输出

三、calendar

(1)calendar.calendar()

返回一个多行字符串格式的year年年历,3个月一行,间隔距离为c,每日宽度间隔为w字符。每行长度为21* W+18+2* C。l是每星期行数。

year = calendar.calendar(2018)print(year)2018      January                   February                   MarchMo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su1  2  3  4  5  6  7                1  2  3  4                1  2  3  48  9 10 11 12 13 14       5  6  7  8  9 10 11       5  6  7  8  9 10 1115 16 17 18 19 20 21      12 13 14 15 16 17 18      12 13 14 15 16 17 1822 23 24 25 26 27 28      19 20 21 22 23 24 25      19 20 21 22 23 24 2529 30 31                  26 27 28                  26 27 28 29 30 31       April                      May                       JuneMo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su1          1  2  3  4  5  6                   1  2  32  3  4  5  6  7  8       7  8  9 10 11 12 13       4  5  6  7  8  9 109 10 11 12 13 14 15      14 15 16 17 18 19 20      11 12 13 14 15 16 1716 17 18 19 20 21 22      21 22 23 24 25 26 27      18 19 20 21 22 23 2423 24 25 26 27 28 29      28 29 30 31               25 26 27 28 29 3030        July                     August                  SeptemberMo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su1             1  2  3  4  5                      1  22  3  4  5  6  7  8       6  7  8  9 10 11 12       3  4  5  6  7  8  99 10 11 12 13 14 15      13 14 15 16 17 18 19      10 11 12 13 14 15 1616 17 18 19 20 21 22      20 21 22 23 24 25 26      17 18 19 20 21 22 2323 24 25 26 27 28 29      27 28 29 30 31            24 25 26 27 28 29 3030 31      October                   November                  DecemberMo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su1  2  3  4  5  6  7                1  2  3  4                      1  28  9 10 11 12 13 14       5  6  7  8  9 10 11       3  4  5  6  7  8  915 16 17 18 19 20 21      12 13 14 15 16 17 18      10 11 12 13 14 15 1622 23 24 25 26 27 28      19 20 21 22 23 24 25      17 18 19 20 21 22 2329 30 31                  26 27 28 29 30            24 25 26 27 28 29 3031

(2)calendar.firstweekday( )

返回当前每周起始日期的设置。默认情况下,首次载入caendar模块时返回0,即星期一。

(3)calendar.month(year,month,w=2,l=1)

返回一个多行字符串格式的year年month月日历,两行标题,一周一行。每日宽度间隔为w字符。每行的长度为7* w+6。l是每星期的行数。

print(calendar.month(2018,9))   September 2018Mo Tu We Th Fr Sa Su1  23  4  5  6  7  8  910 11 12 13 14 15 1617 18 19 20 21 22 2324 25 26 27 28 29 30

(4)calendar.monthcalendar(year,month)

返回一个整数的单层嵌套列表。每个子列表装载代表一个星期的整数。Year年month月外的日期都设为0;范围内的日子都由该月第几日表示,从1开始。

(5)calendar.setfirstweekday(weekday)

设置每周的起始日期码。0(星期一)到6(星期日)。

(6)calendar.timegm(tupletime)

和time.gmtime相反:接受一个时间元组形式,返回该时刻的时间辍(1970纪元后经过的浮点秒数)。

(7)calendar.weekday(year,month,day)

返回给定日期的日期码。0(星期一)到6(星期日)。月份为 1(一月) 到 12(12月)。

>>> calendar.weekday(2018,9,13)3>>> calendar.weekday(2018,9,1)5
isleap()  #检测年份是否是润年  如果不是100的整数倍,能被4整除就是润年,如果是100的整数倍,能被400整除就是润年result = calendar.isleap(1990)print(result)#leapdays()  检测指定年限内润年的数量result = calendar.leapdays(1988,2020)print(result)#monthrange()  获取指定月份的信息result = calendar.monthrange(1990,7)print(result)#weekday ()根据指定的年月日计算星期几result = calendar.weekday(1990,7,22)print(result)#timegm() 将时间元组转化为时间戳tps = (1990,6,10,20,35,0,0,0)result = calendar.timegm(tps)print(result)

猜您喜欢往期精选▼

1. 【抽奖啦】赠送 6 个 Python 数据分析必备学习路线入门课程

2.【个人整理】faster-RCNN的训练过程以及关键点总结

3.【个人整理】faster-RCNN的核心构件——RPN区域推荐网络(二)

4.【个人整理】faster-RCNN的背景、结构以及大致实现架构(一)

5.收藏数据集网盘下载

扫描关注

等你来撩

热爱生活的人

终将被生活热爱

vue 日期格式化返回指定个数月份_python时间与日期处理一次看个够(time、datetime、calendar)...相关推荐

  1. vue 日期格式化返回指定个数月份_vue过滤器实现日期格式化的案例分析

    说明 今天将要介绍的是vue中的过滤器,并且将实现一个日期格式化的小案例. 大家都知道,我们获取当前日期可以通过Date对象获取.下面我将获取当前时间并打印出来. console.log(new Da ...

  2. vue 日期格式化返回指定个数月份_12、vue中日期格式化转换的函数

    /** *  format time depend on the offer timestamp or Date instance *  @param  {Number, Date } date 要转 ...

  3. oracle中datepart函数,Asp DatePart 函数的语法详解(用于计算日期并返回指定的时间间隔)...

    Asp DatePart 函数的语法详解(用于计算日期并返回指定的时间间隔) 更新时间:2012年07月31日 21:32:58   作者: ASP(VBScript) 参考手册中,已经对 DateP ...

  4. 如何通过数据库SQL Server 2014中的SQL日期格式化语句来转换出我们需要的日期格式化日期时间格式转换的教程方法

    如何通过数据库SQL Server 2014中的SQL日期格式化语句来转换出我们需要的日期格式化日期时间格式转换的教程方法 作者:张国军_Suger 开发工具与关键技术:SQL Server 2014 ...

  5. 学习python时间安排_Python时间和日期学习

    1 #coding=utf-8 2 __author__ = 'Administrator' 3 4 5 #日期和时间模块学习 6 """ 7 Python程序能用很多方 ...

  6. oracle 日期格式化 修改_java学习笔记:时间日期类

    一.Date类 Date类表示时间日期类,属于java.util包,使用需要导包.需要了解的是,计算机中时间原点为:1970年1月1日 00:00:00,了解一下这个时间就好.时间换算单位为:1秒 = ...

  7. date-fns日期格式化_date-fns快速浏览,一个简单JavaScript日期库

    date-fns日期格式化 Working with dates in JavaScript isn't easy. That's why if you look at the package.jso ...

  8. python日期函数_python 时间及日期函数

    本人最近新学python ,用到关于时间和日期的函数,经过一番研究,从网上查找资料,经过测试,总结了一下相关的方法. import time import datetime '''时间转化为时间戳: ...

  9. python中日期和时间格式化输出的方法小结_Python 时间操作例子和时间格式化参数小结...

    1.取过去具体时间的方法: #!/usr/bin/python import time #取一天前的当前具体时间 time.strftime('%Y-%m-%d %T',time.localtime( ...

最新文章

  1. 系统linux/redhat6.5 zabbix 2.47监控nginx1.8.0 (下)
  2. android stack error message is Fail to start the plugin
  3. Linux Kernel TCP/IP Stack — L2 Layer — switchdev L2 Offload
  4. 高性能网站建设的14个原则
  5. LLVM笔记(5) - SMS
  6. 谷歌自锤Attention:纯注意力并没那么有用,Transformer组件很重要
  7. 表的插入、更新、删除、合并操作_12_通过表关联更新表
  8. 优化算法笔记|粒子群算法理解及Python实现
  9. 我的nginx+php是如何配置的?
  10. linux grep 非_帮助非技术人员转向Linux的8条技巧
  11. 自用迷你版的Deferred
  12. Python中函数的形参与按值传递之间的关系
  13. 退货地址导出(拼多多)
  14. 国家医保移动支付国密算法SM2签名验签、SM4加解密测试工具
  15. 2015腾讯校园招聘软件测试部分笔试题
  16. flink如何设置以每天零点到第二天零点为区间的window进行计算
  17. 编程求球的体积和表面积(c语言)
  18. 如何把小米和计算机共享,小米随身Wifi如何让手机共享电脑文件 小米wifi共享电脑文件教程...
  19. 新版MacBookPro风扇狂转的问题
  20. H3C SecPath F100 系列防火墙基本配置

热门文章

  1. table表格高级用法(一)
  2. Java开发者必须掌握的15个框架
  3. 服务器块格式不正确的是什么,c#-服务器标签格式不正确.(databinder.eval)
  4. kali linux引导文件修复,Kali+Windows引导修复
  5. java 强制转换 效率_Java 性能优化:35 个小细节,让你提升 Java 代码的运行效率...
  6. mysql left join和or_Case:MySQL使用left join的时候or改写成union可以提高效率
  7. mysql 5.5 udf_MYSQL5漏洞之udf提权
  8. node mysql查询回调_nodejs 数据库查询回调问题
  9. mysql中的页与磁盘关系_数据库和磁盘阵列的关系
  10. OpenShift 4 - Fedora CoreOS (6) - 用rpm-ostree安装软件、升级回滚CoreOS