zoukankan      html  css  js  c++  java
  • time,datetime,calendar模块

    Python中,与时间有关的模块有time,datetime和calendar。

    1.时钟时间:time

    在Python中,用三种方式来表示时间:时间戳,格式化时间字符串和结构化时间。

    1)时间戳,就是从1970.01.01之后的秒,可以通过time.time()获得,是个浮点数。

    2)格式化时间字符串,就是类似2019-03-30 20:30:12这样,可以通过time.locatime()获得。

    3)结构化时间,就是包含了年月日时分秒的元组,可以通过time.strftime()获得。

     1 
    2 import time 3 #1.获取以秒为单位的时间time.time(): 4 print(time.time()) 5 #2.获取人可以理解的时间time.ctime(),该方法也可以把以秒为单位的时间转换为人可以理解的时间: 6 t1=time.time() 7 print(t1) 8 print(time.ctime(t1)) 9 #3.获取格林尼日时间(UTC)time.gmtime(): 10 print(time.gmtime()) 11 #4.根据当前时区获取当前的时间,time.localtime(),该方法获得是一个结构化的时间元组: 12 print(time.localtime()) 13 #5.UTC时间与浮点值时间的相互换算 14 t2=time.time() 15 print(time.gmtime(t2)) #将浮点值时间转换为UTC时间 16 print(time.localtime(t2)) #将浮点值时间转换为本地时区的时间 17 18 t3=time.gmtime() #获取UTC格式时间 19 print(time.mktime(t3)) #将UTC时间转换为浮点值时间 20 t4=time.localtime() #获取UTC格式的当前时区时间 21 print(time.mktime(t4)) #UTC格式当前时区时间转换为浮点值时间 22 #6.解析UTC格式时间: 23 def parseUTCTime(t): 24 print('年:',t.tm_year) 25 print('月:',t.tm_mon) 26 print('日:',t.tm_mday) 27 print('时:',t.tm_hour) 28 print('分:',t.tm_min) 29 print('秒:',t.tm_sec) 30 print('星期:',t.tm_wday+1) 31 print('一年中的第 %s 天:' % t.tm_yday) 32 print('是否是夏时令:',t.tm_isdst) 33 34 35 t5=time.localtime() 36 parseUTCTime(t5) 37 38 #7.格式化日期 39 timeLocal=time.localtime() 40 # %a 星期简写 Tue 41 print("日期简写:",time.strftime("%a",timeLocal)) 42 # %A 星期全称 Tuesday 43 print("日期全称:",time.strftime("%A",timeLocal)) 44 # %b 月份简写 Jan 45 print("月份简称:",time.strftime("%b",timeLocal)) 46 # %B 月份全称 January 47 print("月份全称:",time.strftime("%B",timeLocal)) 48 # %c 适合语言下的时间表示 Tue Jan 8 21:35:03 2019 49 print(time.strftime("%c",timeLocal)) 50 # %d 一个月的第一天,取值范围: [01,31]. 8 51 print("一个月的第%s天" % time.strftime("%d",timeLocal)) 52 # %H 24小时制的小时,取值范围[00,23]. 21 53 print("当前时间(24小时制)为:",time.strftime("%H",timeLocal)) 54 # %I 12小时制的小时,取值范围 [01,12]. 09 55 print("当前时间(12小时制)为:",time.strftime("%I",timeLocal)) 56 # %j 一年中的第几天,取值范围 [001,366]. 008 57 print("一年中的第%s天" % time.strftime("%j",timeLocal)) 58 # %m 十进制月份,取值范围[01,12]. 01 59 print("当前月份为:",time.strftime("%m",timeLocal)) 60 # %M 分钟,取值范围 [00,59]. 42 61 print("当前的分钟为:",time.strftime("%M",timeLocal)) 62 # %p 上、下午,AM 或 PM. PM 63 print("当前时间为:",time.strftime("%p",timeLocal)) 64 # %S 秒,取值范围 [00,61]. 50 65 print("当前的秒为:",time.strftime("%S",timeLocal)) 66 # %U 这一年的星期数(星期天为一个星期的第一天,开年的第一个星期天之前的天记到第0个星期)趋势范围[00,53]. 01 67 print("本周为为本年的第%s星期" % time.strftime("%U",timeLocal)) 68 # %w 星期的十进制表示,取值范围 [0(星期天),6]. 2 69 print("今天为星期%s" % time.strftime("%w",timeLocal)) 70 # %W 这一年的星期数(星期一为一个星期的第一天,开年的第一个星期一之前的天记到第0个星期)趋势范围[00,53]. 01 71 print("本周为本年的第%s个星期" % time.strftime("%W",timeLocal)) 72 # %x 特定自然语言下的日期表示 01/08/19 73 print(time.strftime("%x",timeLocal)) 74 # %X 特定自然语言下的时间表示 21:52:01 75 print(time.strftime("%X",timeLocal)) 76 # %y 年的后两位数,取值范围[00,99]. 19 77 print("当年的后两位数:",time.strftime("%y",timeLocal)) 78 # %Y 完整的年 2013 79 print("当年的完整年份:",time.strftime("%Y",timeLocal))
    格式含义
    %a 本地星期名称的简写(如星期二为Tue)
    %A 本地星期名称的全称(如星期二为Tuesday)
    %b 本地月份名称的简写(如三月份为Mar)
    %B 本地月份名称的全称(如三月份为March)
    %c 本地相应的日期和时间的字符串表示(如:19/03/30 20:33:06)
    %d 一个月中的第几天(01 - 31)
    %f 微秒(范围0.999999)
    %H 一天中的第几个小时(24小时制,00 - 23)
    %I 第几个小时(12小时制,0 - 11)
    %j 一年中的第几天(001 - 366)
    %m 月份(01 - 12)
    %M 分钟数(00 - 59)
    %p 本地am或者pm的标识符
    %S 秒(00 - 61)
    %U 一年中的星期数。(00 - 53星期天是一个星期的开始。)第一个星期天之 前的所有天数都放在第0周。
    %w 一个星期中的第几天(0 - 6,0是星期天)
    %W 和%U基本相同,不同的是%W以星期一为一个星期的开始。
    %x 本地相应日期字符串(如15/08/01)
    %X 本地相应时间字符串(如08:08:10)
    %y 去掉世纪的年份(00 - 99)两个数字表示的年份
    %Y 完整的年份(4个数字表示年份)
    %z 与UTC时间的间隔(如果是本地时间,返回空字符串)
    %Z 时区的名字(如果是本地时间,返回空字符串)
    %% ‘%’字符

    2.日期和时间管理:datetime

     1 import  datetime
     2 
     3 #1.用datetime.time()构造时间,只能处理时分秒
     4 print(datetime.time(22,36,12))
     5 print(datetime.time.max,datetime.time.min,datetime.time.resolution) #时间的最大值,最小值,精度
     6 #2.用datetime.date()构造日期,只能处理日月年,不能处理时分秒
     7 print(datetime.date(2019,1,8))
     8 print(datetime.date.max,datetime.date.min,datetime.date.resolution) #日期的最大值,最小值,精度
     9 
    10 today=datetime.date.today() #获取今天
    11 print(today)
    12 print(today.replace(year=2018)) #替换年
    13 print(today.replace(month=2)) #替换月
    14 print(today.replace(day=12)) #替换日
    15 #3.timedelta表示星期,日,小时,秒,毫秒,微秒,可以对datetime.date,datetime.time,datetime.datetime做算数运算。
    16 print(datetime.timedelta(weeks=3)) #三个星期
    17 print(datetime.timedelta(days=13)) #13天
    18 print(datetime.timedelta(hours=24)) #1天
    19 print(datetime.timedelta(seconds=86400)) #1天

    calendar :处理日期,管理年,月,周等

    1 import calendar
    2 
    3 cal=calendar.TextCalendar(calendar.SATURDAY) #生成格式化的日历
    4 cal.prmonth(2018,1)
    5 #HTMLCalendar在处理一些重复性日期时比较方便
    6 
    7 #日历在实际开发中使用的不多
  • 相关阅读:
    php2
    11-14php
    三层嵌套
    常见的浏览器兼容
    css中的一些问题及解决方法
    css
    html
    测试题
    正则表达式
    Math对象
  • 原文地址:https://www.cnblogs.com/zhuzhaoli/p/10633088.html
Copyright © 2011-2022 走看看