Python第十一章-常用的核心模块04-datetime模块
python 自称 "Batteries included"(自带电池, 自备干粮?), 就是因为他提供了很多内置的模块, 使用这些模块无需安装和配置即可使用.
本章主要介绍 python 的一些内置常用核心模块
Python 常用的核心模块
四、datetime模块
datetime
模块是专门用来处理时间的标准库模块.
模块名是datetime
, 这个模块的内部定义多个类.
datetime
模块下有个类datatime
既可以操作日期, 也可以操作时间. 主要研究这个类
4.1获取当前日期和时间
# 导入 datetime 模块下的类 datetime
from datetime import datetime
# 调用 datetime 的类方法 now 获取当前日期和时间, 返回的是一个 datetime 对象
now = datetime.now()
print(now)
print(isinstance(now, datetime))
4.2指定日期和时间
使用类datetime
创建对象, 可以传入指定的日期和时间
from datetime import datetime
# 年月日时分秒, 时分秒可选,默认都是0
that_time = datetime(2028, 10, 11, 12, 11, 20)
print(that_time)
传递值的时候不能超出范围, 否则会抛异常.
4.3 datetime
的一些常用属性和方法
4.3.1.类属性
min
: python 所能处理的最小日期和时间
max
: python 所能处理的最大日期和时间
from datetime import datetime
print(datetime.max)
print(datetime.min)
4.3.2.实例属性(只读)
year, month, day, hour, minute, second, microsecond
microsecond
:是微秒
from datetime import datetime
now = datetime.now()
msg = "现在是: %d 年 %d 月 %d 日 %d:%d:%d %d" \
% (now.year, now.month, now.day,
now.hour, now.minute, now.second,
now.microsecond)
print(msg)
4.3.3.类方法
now(), today()
2 个方法都是返回当前日期和时间
4.3.4.实例方法
weekday()
:返回是星期几(0-6)
isoweekday()
:也是返回星期几(1-7)
from datetime import datetime
now = datetime.now()
print(now.weekday())
print(now.isoweekday())
4.4datetime
支持的 + - 比较
操作
datetime
实例可以和一个timedelta
对象进行 + -
操作
timedelta
表示日期和时间的一个变化量
from datetime import datetime, timedelta
now = datetime.now()
print(now)
# 表示3天后的时间
later = now + timedelta(days=3)
print(later)
# 表示3天前的时间
pre = now - timedelta(days=3)
print(pre)
# 两个日期进行比较大小
print(now > pre)
print(now < later)
4.5timestamp
(时间戳)
在计算机中,时间实际上是用数字表示的。我们把1970年1月1日 00:00:00 UTC+00:00时区的时刻称为epoch time,记为0(1970年以前的时间timestamp为负数),当前时间就是相对于epoch time的秒数,称为timestamp。
注意:python 的这里是用 s 来表示的, 别的语言大部分是 ms.
from datetime import datetime
now = datetime.now()
# 把日期和时间转成时间戳. 注意返回值是浮点数
print(now.timestamp())
# 把时间戳转换成 datetime
that_dt = datetime.fromtimestamp(2849839789)
print(that_dt)
Python第十一章-常用的核心模块04-datetime模块的更多相关文章
- Python第十一章-常用的核心模块01-collections模块
python 自称 "Batteries included"(自带电池, 自备干粮?), 就是因为他提供了很多内置的模块, 使用这些模块无需安装和配置即可使用. 本章主要介绍 py ...
- Python第十一章-常用的核心模块03-json模块
python 自称 "Batteries included"(自带电池, 自备干粮?), 就是因为他提供了很多内置的模块, 使用这些模块无需安装和配置即可使用. 本章主要介绍 py ...
- Python之路(第十六篇)xml模块、datetime模块
一.xml模块 xml是实现不同语言或程序之间进行数据交换的协议,跟json差不多,但json使用起来更简单, xml比较早,早期许多软件都是用xml,至今很多传统公司如金融行业的很多系统的接口还主要 ...
- python time模块 sys模块 collections模块 random模块 os模块 序列化 datetime模块
一 collections模块 collections模块在内置的数据类型,比如:int.str.list.dict等基础之上额外提供了几种数据类型. 参考博客 http://www.pythoner ...
- (转)python time模块和datetime模块详解
python time模块和datetime模块详解 原文:http://www.cnblogs.com/tkqasn/p/6001134.html 一.time模块 time模块中时间表现的格式主要 ...
- Python学习笔记:time模块和datetime模块(时间和日期)
time模块 time模块通常用来操作时间戳信息(各种“秒”),常用的方法有: time.sleep(seconds):将当前程序阻塞指定秒数,然后继续运行程序. time.time():返回当前时间 ...
- python中time模块和datetime模块
time模块和datetime模块 时间分为三种模式(time 模块) 时间戳 (time.time()) 格式化字符串 (time.strftime(%Y-%m-%d %H:%M:%S %p)) ...
- Time模块和datetime模块
Time模块和datetime模块 一. 调用 import time #调用time模块 二.使用方法 1.time.time 拿到时间戳.以Linux诞生年份1970年开始计算到程序执 ...
- python time模块和datetime模块详解
一.time模块 time模块中时间表现的格式主要有三种: a.timestamp时间戳,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量 b.struct_time时间元组,共 ...
随机推荐
- Spring MVC系列-(1) Spring概述
1. Spring概述 本章主要介绍Spring中的体系结构和常见概念,比如bean.控制反转(Inverse of Control,IoC)等. 1.1 体系结构 Spring 框架提供约 20 个 ...
- 使用JS检测自定义协议是否存在
[该博客是拼接他人的,原因我们这边PC的开发人员问我,有没有关于js某个对象直接能检测手机或者电脑的自定义协议的,我上网搜了下,貌似移动端的解决比较多] 最终解决方案:还是需要github上面大神写的 ...
- JavaScript的数组(一)
在JavaScript中,对象,数组,函数是最最常用的东东了,写完了对象和函数,最后来说说数组吧,提到数组,就只能想到,map,forEach啊,pop,push啊,当真是没有一点点的积累了?这么多年 ...
- 最新版jdk 13环境变量配置
1.配置环境变量 右击“我的电脑”-->"属性"-->"高级系统设置"-->"高级"-->"环境变量&qu ...
- ZXingObjC二维码扫描
#import "QRScanViewController.h" #import "AppDelegate.h" @interface QRScanViewCo ...
- cocoapods安装以及ZXingObjC的安装
因为项目要用到第三方包ZXingObjC,需要安装cocoapods.下面是我曲折的安装过程. 1.直接在终端内输入: sudo gem install cocoapods 我直接安装成功. 由于国内 ...
- 什么是SSH与SSH客户端
1.什么是SSH? SSH 为 Secure Shell 的缩写,由 IETF 的网络工作小组(Network Working Group)所制定:SSH 为建立在应用层和传输层基础上的安全协议.SS ...
- 内存管理 malloc free 的实现
libc 中提供非常好用的 malloc free 功能,如果自己实现一个,应该怎么做. 要实现 malloc free 需要有 可以分配内存使用的堆,和记录内存使用情况的链表. 如下图所示,堆从高 ...
- 【09】openlayers 图片图层
效果: 创建地图: var map = new ol.Map({ //设置显示地图的视图 view: new ol.View({ projection:'EPSG:4326',//投影方式 cent ...
- JVM02——JVM运行时内存
在上一篇文章中,我们介绍了 JVM 的内存区域,本文我们将继续围绕 JVM 展开话题,介绍 JVM 运行时内存.关注我的公众号「Java面典」了解更多 Java 相关知识点. Java 堆从 GC 的 ...