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 #日历在实际开发中使用的不多

time,datetime,calendar模块的更多相关文章

  1. #15 time&datetime&calendar模块

    前言 从这一节开始,记录一些常用的内置模块,模块的学习可能比较无聊,但基础就在这无聊的模块中,话不多说,本节记录和时间相关的模块! 一.time模块 Python中设计时间的模块有很多,但是最常用的就 ...

  2. python日期与日历Datetime和Calendar模块

    datetime模块 1.1 概述 datetime比time高级了不少,可以理解为datetime基于time进行了封装,提供了更多的实用的函数,datetime的接口更加的直观,更容易调用 1.2 ...

  3. datetime模块+calendar模块

    datetime: """ 模块中的类: datatime 同时有时间和日期 timedelta 主要用于计算时间的跨度 tzinfo 时区相关 time 只关注时间 d ...

  4. python 时间模块(time ,datetime,calendar)

    Python中提供了时间相关的内置模块,我们主要用的是:time模块.datetime模块和calendar模块 ⽇期格式化的标准: %y 两位数的年份表示(00-99) %Y 四位数的年份表示(00 ...

  5. Python3之时间模块time & datetime & calendar

    一. 简介 python 提供很多方式处理日期与时间,转换日期格式是一个常见的功能. 时间元组:很多python函数用一个元组装起来的9组数字处理时间. python中时间日期格式化符号: %y 两位 ...

  6. 第三十二节,datetime时间模块

    首先要引入import datetime时间模块 datetime.date.today()模块函数 功能:输出系统年月日输出格式 2016-01-26[无参] 使用方法:datetime.date. ...

  7. Day13 Python基础之time/datetime/random模块一(十一)

    time模块 import time print(help(time)) time.time() #return current time in seconds since the Epoch as ...

  8. calendar模块

    calendar模块是个日历模块 1  判断是否是闰年 #!/urs/bin/evn python # -*- coding:utf-8 -*- import calendar print(calen ...

  9. python五十五课——calendar模块

    4.calendar模块: 构造:calendar(year,[w=2,l=1,c=6]):返回year年的完整的日历信息对象 和闰年相关的函数如下: isleap(year):判断year是否是闰年 ...

  10. calendar 模块

    calendar模块,即日历模块,提供了对日期的一些操作方法,和生成日历的方法 注:星期一是默认的每周第一天,星期天是默认的最后一天.更改设置需调用calendar.setfirstweekday() ...

随机推荐

  1. 40个Java多线程问题总结【转】

    1.多线程有什么用? 一个可能在很多人看来很扯淡的一个问题:我会用多线程就好了,还管它有什么用?在我看来,这个回答更扯淡.所谓”知其然知其所以然”,”会用”只是”知其然”,”为什么用”才是”知其所以然 ...

  2. 关系数据库元组关系演算语言ALPHA

    关系演算 :以数理逻辑中的谓词演算为基础 按谓词变元不同分类 1.元组关系演算:以元组变量作为谓词变元的基本对象元组关系演算语言ALPHA2.域关系演算:以域变量作为谓词变元的基本对象域关系演算语言Q ...

  3. web deploy 部署网站

    一.服务端配置 1. 确保在服务器端(我目前是win server 2012 R2)安装管理服务 安装后服务器会重启, 2)安装webdeploy http://www.iis.net/downloa ...

  4. python's twenty eithth day for me 模块和包

    模块: 什么是模块: 常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀,但其实import加载的模块分为四个通用类别: 1,使用python编写的代码 ...

  5. JAVA简单的文件I/O操作实例

    如果只是对文件进行普通的读写,可以不用文件流. 以下是实例: File file = new File("test1.txt"); //向文件写入数据的 PrintWriter p ...

  6. Java占位符替换工具类

    import java.util.HashMap; import java.util.Map; import org.slf4j.Logger; import org.slf4j.LoggerFact ...

  7. S3C6410的启动代码分析 一

    本文开始第一篇,启动代码的编写,注意,仅仅是启动代码,并不是bootloader,因为只有boot,没有loader. 第一要明确:CPU上电之后,会从某个固定地址执行指令.ARM结构的CPU从地址0 ...

  8. 如何搭建自己的SPRING INITIALIZR server

    这两天在慕课学Spring boot ,用idea通过spring initializr新建项目 即使用代理连不上.无奈. 参考了 GitHub - spring-io/initializr: A w ...

  9. IDEA启动缓慢且运行卡顿

    最近在自己的机器上用IDEA时启动竟然要半分钟,且启动后索引操作居然还需要等待很久.并且每次通过IDEA执行JAVA项目在启动和关闭时都会发生卡顿.明明机器的配置不错,这是为啥呢? 这是因为为IDEA ...

  10. 虚拟机安装CentOS以及SecureCRT设置【完美无错版】

    一.CentOS简介 CentOS是Linux的发行版之一,它安全.稳定.高效,是我最喜欢的Linux发行版之一.CentOS根据Red Hat Enterprise Linux开放源代码编译而成,与 ...