孤荷凌寒自学python第二十七天python的datetime模块及初识datetime.date模块
(完整学习过程屏幕记录视频地址在文末,手写笔记在文末)
一、datetime模块
datetime模块包含以下子模块:
(一) 表示时刻点 的模块
datetime.date
datetime.time
datetime.datetime
datetime.datetime_CAPI
(二) 表示时间间隔(时间长度)的模块
datetime.delta
(三) 表示时区信息的模块
datetime.tzinfo
二、datetime模块表示时间的起止极限
datetime模块能表达1-9999年的所有时间。
有两个相关常量
datetime.MINYEAR =1
datetime.MAXYEAR=9999
三、初识 datetime.date子模块
datetime.date实例化时的初始形参有三个:年、月、日
执行初始化即可得到一个实例化的datetime.date对象:
测试:
>>> import datetime
>>> dateTemp=datetime.date(2018,10,8)
>>> print(dateTemp)
2018-10-08
四、datetime.date对象的常用属性
最常用的属性有四个:
year 返回日期中的 年
month 返回日期中的 月
day 返回日期中的 日
__getattribute__ 获取日期对象中指定的属性
下面继续上面的测试(只有新增加的代码部分)
>>> intY=dateTemp.year
>>> intM=dateTemp.month
>>> intD=dateTemp.day
>>> print(intY,intM,intD)
2018 10 8
>>> intY2=dateTemp.__getattribute__('year')
>>> print(intY2)
2018
五、比较两个 datetime.date对象的大小
使用 datetime.date 对象的以下内部 方法 比较 当前datetime.date对象与另一个datetime.date对象的大小:
测试如下:
import datetime
dateOne=datetime.date(2018,6,30)
dateTwo=datetime.date(2018,7,1)
print(dateOne.__eq__(dateTwo)) #dateOne是否等于dateTwo
print(dateOne.__ge__(dateTwo)) #dateOne是否大于等于dateTwo
print(dateOne.__gt__(dateTwo)) #dateOne是否大于dateTwo
print(dateOne.__le__(dateTwo)) #dateOne是否小于等于dateTwo
print(dateOne.__lt__(dateTwo)) #dateOne是否小于dateTwo
print(dateOne.__ne__(dateTwo)) #dateOne是否不等于dateTwo
以上所有方法都返回 布尔对象 True 或 False
六、两个datetime.date对象的减法操作
1 正向相减(当前日期对象减去后面参数的日期对象)
x.__sub__(y) 表示x-y
2 反向相减 (后面的参数的日期对象减去当前日期对象)
x.__rsub__(y) 表示y-x
执行datetime.date对象的这两个方法后,返回的是一个:
datetime.timedelta
对象。
七、对datetime.date对象的国际化处理(iso标准)
1 isocalendar()
执行此方法 ,将返回一个元组,此元组对象有三个元素,先后顺序排列为:
年、一年的第几周、星期几(1表示星期一)
测试:
>>> import datetime
>>> a=datetime.date(2017,3,22)
>>> tpl=a.isocalendar()
>>> print(tpl)
(2017, 12, 3)
2 isoformat() __str__()
执行此方法,将返回国际标准的日期字符串:
YYYY-MM-DD
在操作系统日期环境设置为中文的情况下,__str__()方法返回结果与isoformat()方法一样。
测试:
>>> import datetime
>>> d=datetime.date(2018,10,9)
>>> strA=d.isoformat()
>>> strB=d.__str__()
>>> print(strA,strB)
2018-10-09 2018-10-09
3 isoweekday()
执行此方法 将返回 星期几对应的数字 1-7,其中1表示星期一,7表示星期日
继续上面的测试(以下代码只有新增的代码 部分)
>>> intWeekDay=d.isoweekday()
>>> print(intWeekDay)
2
八、datetime.date对象的其它方法
1 weekday()
执行此方法 将返回 星期几对应的数字 0-6 ,其中0表示星期一,6表示星期日
2 timetuple()
执行此方法 将把当前datetime.date对象转换成time模块中的 struct_time(标准时间元组)对象。
但datetime.date对象中没有时间信息,那么,转换后的struct_time(标准时间元组)对象中的所有与时间相关的值都用0来填充。
继续上面的测试(以下代码只有新增的代码 部分):
>>> tplStruct_Time=d.timetuple()
>>> print(tplStruct_Time)
time.struct_time(tm_year=2018, tm_mon=10,tm_mday=9, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=1, tm_yday=282, tm_isdst=-1)
——————————
今天整理的学习笔记完成,最后例行说明下我的自学思路:
根据过去多年我自学各种编程语言的经历,认为只有真正体验式,解决实际问题式的学习才会有真正的效果,即让学习实际发生。在2004年的时候我开始在一个乡村小学自学电脑 并学习vb6编程语言,没有学习同伴,也没有高师在上,甚至电脑都是孤岛(乡村那时还没有网络),有的只是一本旧书,在痛苦的自学摸索中,我找到适应自己零基础的学习方法:首先是每读书的一小节就作相应的手写笔记,第二步就是上机测试每一个笔记内容是否实现,其中会发现书中讲的其实有出入或错误,第三步就是在上机测试之后,将笔记改为电子版,形成最终的修订好的正确无误的学习笔记。
通过反复尝试错误,在那个没有分享与交流的黑暗时期我摸黑学会了VB6,尔后接触了其它语言,也曾听过付费视频课程,结果发现也许自己学历果然太低,就算是零基础的入门课程,其实也难以跟上进度,讲师的教学多数出现对初学者的实际情况并不了解的情况,况且学习者的个体也存在差异呢?当然更可怕的是收费课程的价格往往是自己难以承受的。
于是我的所有编程学习都改为了自学,继续自己的三步学习笔记法的学习之路。
当然自学的最大问题是会走那么多的弯路,没有导师直接输入式的教学来得直接,好在网络给我们带来无限搜索的机会,大家在网络上的学习日志带给我们共享交流的机会,而QQ群等交流平台、网络社区的成立,我们可以一起自学,互相批评交流,也可以获得更有效,更自主的自学成果。
于是我以人生已过半的年龄,决定继续我的编程自学之路,开始学习python,只希望与大家共同交流,一个人的独行是可怕的,只有一群人的共同前进才是有希望的。
诚挚期待您的交流分享批评指点!欢迎联系我加入从零开始的自学联盟。
这个时代互联网成为了一种基础设施的存在,于是本来在孤独学习之路上的我们变得不再孤独,因为网络就是一个新的客厅,我们时刻都可以进行沙龙活动。
非常乐意能与大家一起交流自己自学心得和发现,更希望大家能够对我学习过程中的错误给予指点——是的,这样我就能有许多免费的高师了——这也是分享时代,社区时代带来的好福利,我相信大家会的,是吧!
根据完全共享的精神,开源互助的理念,我的个人自学录制过程是全部按4K高清视频录制的,从手写笔记到验证手写笔记的上机操作过程全程录制,但因为4K高清文件太大均超过5G以上,所以无法上传至网络,如有需要可联系我QQ578652607对传,乐意分享。上传分享到百度网盘的只是压缩后的720P的视频。
我的学习过程录像百度盘地址分享如下:(清晰度:1280x720)
链接:https://pan.baidu.com/s/1sxoKKui9oqis5cPSnPam0w 密码:msqa
喜马拉雅语音笔记:
https://www.ximalaya.com/keji/19103006/141893275
孤荷凌寒自学python第二十七天python的datetime模块及初识datetime.date模块的更多相关文章
- 孤荷凌寒自学python第七十七天开始写Python的第一个爬虫7
孤荷凌寒自学python第七十七天开始写Python的第一个爬虫7 (完整学习过程屏幕记录视频地址在文末) 今天在上一天的基础上继续完成对我的第一个代码程序的书写. 今天的学习仍然是在纯粹对docx模 ...
- 孤荷凌寒自学python第六十七天初步了解Python爬虫初识requests模块
孤荷凌寒自学python第六十七天初步了解Python爬虫初识requests模块 (完整学习过程屏幕记录视频地址在文末) 从今天起开始正式学习Python的爬虫. 今天已经初步了解了两个主要的模块: ...
- 孤荷凌寒自学python第四十七天通用跨数据库同一数据库中复制数据表函数
孤荷凌寒自学python第四十七天通用跨数据库同一数据库中复制数据表函数 (完整学习过程屏幕记录视频地址在文末) 今天继续建构自感觉用起来顺手些的自定义模块和类的代码. 今天打算完成的是通用的(至少目 ...
- 孤荷凌寒自学python第十七天初识Python的函数
孤荷凌寒自学python第十七天初识Python的函数 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 函数是能够完成指定运算并返回运算结果的代码块.是结构化编程重要的结构. 我首先发现pyt ...
- 孤荷凌寒自学python第五十七天初次尝试使用python来连接远端MongoDb数据库
孤荷凌寒自学python第五十七天初次尝试使用python来连接远端MongoDb数据库 (完整学习过程屏幕记录视频地址在文末) 今天是学习mongoDB数据库的第三天.感觉这个东西学习起来还是那么困 ...
- 孤荷凌寒自学python第三十七天python的文件与内存变量之间的序列化与反序列化
孤荷凌寒自学python第三十七天python的文件与内存变量之间的序列化与反序列化 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 一.什么是序列化与反序列化 序列化是指将内存中的数据进行指 ...
- 孤荷凌寒自学python第二十九天python的datetime.time模块
孤荷凌寒自学python第二十九天python的datetime.time模块 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) datetime.time模块是专门用来表示纯时间部分的类. ...
- 孤荷凌寒自学python第二十八天python的datetime.date模块
孤荷凌寒自学python第二十八天python的datetime.date模块 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 一.toordinal() 此方法将访问从公元1年1月1日至当 ...
- 孤荷凌寒自学python第二十六天python的time模块的相关方法
孤荷凌寒自学python第二十六天python的time模块的相关方法 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 要使用time模块的相关方法,必须在文件顶端引用: import tim ...
随机推荐
- 旧文备份:windows下编译和使用IT++
1.下载IT++最新版:<a href="http://sourceforge.net/projects/itpp/">http://sourceforge.net/p ...
- DESCryptoServiceProvider 类加密解密
DESCryptoServiceProvider 点击查看介绍 加密解密辅助类:点击查看 私钥加密 定义:定义一个包装对象来访问加密服务提供程序 (CSP) 版本的数据加密标准 (DES) 算法. ...
- cnn为什么会不存在vanishing gradient的问题
之前神经网络火过一段时间,但是后来又淡出了,后来又火了,尤其是到2012年真的像发水一样. 之前为什么不火了呢,因为人们发现网络浅了吧,没什么优势.网络深了吧,又会出现vanishing gradie ...
- JDBC-Hibernate-Mybatis
JDBC sql语句和Java代码混在了一起 Hibernate 自动生成sql语句 Mybatis 将sql语句写在xml文件中,使用时动态生成
- 你的 maven 如何使用
maven把你从痛苦的找包中解脱,让你感觉如此神奇,也让你的项目能够如此之小--功能一 依赖管理 (pom.xml 项目对象模型配置文件) 没有对比就没有伤害 maven让你可以随意增加删除项目的功 ...
- 漂亮提醒框js
<script type="text/javascript"> var filename = "PICC_V2.1.3.0_新增功能操作手册.doc" ...
- 利用bootstrap制作滚动监听
滚动监听(Scrollspy)插件,即自动更新导航插件,会根据滚动条的位置自动更新对应的导航目标. 在这里,需要引入三个文件:bootstrap.min.css jquery-3.3.1.j ...
- 交换机基础配置之结合以太通道的vlan设置
我们将以上面的拓扑图来做实验,建立以太通道,并设置好vlan,将pc1和pc3放在同一vlan,将pc2和pc4放在同一vlan,同一vlan能跨交换机通信 在一切还没布置之前,四台pc机都在同一网段 ...
- [转] vim配置python自动补全
vim python自动补全插件:pydiction 可以实现下面python代码的自动补全: 1.简单python关键词补全 2.python 函数补全带括号 3.python 模块补全 4.pyt ...
- dts--framework(一)
dts 大体框架 framework 定义类 定义方法 tests framework调用所需要的函数 ./dpdk/usertools/cpu_layout.py /sys/devices/syst ...