Python手册(Standard Library)--datetime+time+calendar

2023-11-07


Python 程序能用很多方式处理日期和时间,转换日期格式是一个常见的功能。
Python 提供了一个 time 和 calendar 模块可以用于格式化日期和时间。
时间间隔是以秒为单位的浮点小数。
每个时间戳都以自从1970年1月1日午夜(历元)经过了多长时间来表示。

datetime

datetime模块定义了6个类
datetime.date 表示日期的类
datetime.datetime 表示日期时间的类
datetime.time 表示时间的类
datetime.timedelta 表示时间间隔
datetime.tzinfo 时区的相关信息
datetime.timezone 将tzinfo抽象基类实现为UTC固定偏移量的类
from datetime import date,datetime,time,timedelta

datetime.timedelta

datetime.timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0)
属性 read-only
days Between -999999999 and 999999999 inclusive
seconds Between 0 and 86399 inclusive
microseconds Between 0 and 999999 inclusive
方法
total_seconds() 返回持续时间中包含的总秒数

datetime.date

date(year,month,day)返回 ‘year-month-day’
date.today()返回today(datetime.date类)
date.fromtimestamp(timestamp)由时间戳转化
date.fromordinal(ordinal)

timestamp(时间戳)是指格林威治时间1970年01月01日00时00分00秒起至现在的总秒数。

属性 read-only
date.year Between MINYEAR and MAXYEAR inclusive.
date.month Between 1 and 12 inclusive.
date.day Between 1 and the number of days in the given month of the given year.

运算

date2 = date1 + timedelta
date2 = date1 - timedelta
timedelta = date1 - date2
date1 < date2	
方法 说明
replace(year=self.year, month=self.month, day=self.day) 替换给定日期,但不改变原日期
timetuple() 返回 time.struct_time对象(时间元祖)
toordinal() 回归原始日期
weekday() Return the day of the week as an integer, where Monday is 0 and Sunday is 6
isoweekday() Return the day of the week as an integer, where Monday is 1 and Sunday is 7
isocalendar() Return a 3-tuple, (ISO year, ISO week number, ISO weekday)
isoformat() Return a string ‘YYYY-MM-DD’
ctime() return a string (date(2002, 12, 4).ctime() == 'Wed Dec 4 00:00:00 2002')
strftime(format) 返回指定格式字符

datetime.datetime

datetime(year, month, day, hour=0, minute=0, second=0, microsecond=0, tzinfo=None, *, fold=0) 
创建 说明
datetime.today() 返回当天date
datetime.now() 返回当前系统时间
datetime.fromtimestamp(timestamp, tz=None) 根据时间戮返回datetime对象
datetime.fromordinal(ordinal)
datetime.combine(date, time, tzinfo=self.tzinfo) date对象和time对象组合成新的datetime对象
datetime.strptime(date_string, format) 字符串格式创建
datetime.strftime() 转换为字符格式
属性 (read-only)
year Between MINYEAR and MAXYEAR inclusive.
month Between 1 and 12 inclusive.
day Between 1 and the number of days in the given month of the given year.
hour In range(24).
minute In range(60).
second In range(60).
microsecond In range(1000000).(微秒)
tzinfo 时区
fold

运算

datetime2 = datetime1 + timedelta
datetime2 = datetime1 - timedelta
timedelta = datetime1 - datetime2
datetime1 < datetime2
方法 说明
date() 返回date对象
time() 返回time对象
replace() 替换
ctime() 返回格式如 Sun Apr 16 00:00:00 2017
timetuple() 返回time.struct_time对象
utctimetuple()
toordinal()
timestamp() 返回时间戳(float)
weekday() Monday is 0 and Sunday is 6
isoweekday() Monday is 1 and Sunday is 7
isocalendar() Return a 3-tuple, (ISO year, ISO week number, ISO weekday)
isoformat(sep=‘T’, timespec=‘auto’) Return a string ‘YYYY-MM-DDTHH:MM:SS.mm’
ctime() return a string (‘Wed Dec 4 20:30:40 2002’)
strftime(format) 由日期格式转化为字符串格式

关于时区的方法暂时不计入

datetime.time

time(hour=0, minute=0, second=0, microsecond=0, tzinfo=None, *, fold=0)
属性 (read-only)
hour In range(24).
minute In range(60).
second In range(60).
microsecond In range(1000000).
tzinfo
fold
方法 说明
replace()
isoformat(timespec=‘auto’)
strftime(format) 转字符格式
tzname() 返回时区名字
utcoffset() 返回时区的时间偏移量
dst()

python中时间日期格式化符号

格式 说明 Example
%a 周日期缩写 Sun, Mon, …, Sat (en_US);
%A 周日期全称 Sunday, Monday, …, Saturday (en_US);
%w 周数字 0, 1, …, 6
%d 月中天数 01, 02, …, 31
%b 月份缩写 Jan, Feb, …, Dec (en_US);
%B 月份全称 January, February, …, December (en_US);
%m 月份数字 01, 02, …, 12
%y 年数字,两位 00, 01, …, 99
%Y 年数字,四位 0001, 0002, …, 2013, 2014, …, 9998, 9999
%H 24小时制 00, 01, …, 23
%I 12小时制 01, 02, …, 12
%p AM or PM AM, PM (en_US);
%M 分钟 00, 01, …, 59
%S 00, 01, …, 59
%f 微秒 000000, 000001, …, 999999
%z UTC offset in the form +HHMM or -HHMM (empty), +0000, -0400, +1030
%Z 时区名 (empty), UTC, EST, CST
%j 年中的天数 001, 002, …, 366
%U 年中的周日期(周日为第一天) 00, 01, …, 53
%W 年中的周日期(周一为第一天) 00, 01, …, 53
%c date and time Tue Aug 16 21:30:00 1988 (en_US);
%x date 08/16/88 (None)
08/16/1988 (en_US)
%X time 21:30:00 (en_US);
%% %'字符 %
%G ISO 8601 year 0001, 0002, …, 2013, 2014, …, 9998, 9999
%u ISO 8601 weekday 1, 2, …, 7
%V ISO 8601 week 01, 02, …, 53

time

函数
time.clock() 用CPU花费的时间(秒)
time.sleep(secs)

time.struct_time(时间戳类)

属性 说明
tm_year yyyy
tm_mon 1 到 12
tm_mday 1 到 31
tm_hour 0 到 23
tm_min 0 到 59
tm_sec 0 到 61 (60或61 是闰秒)
tm_wday 0到6 (0是周一)
tm_yday 1 到 366
tm_isdst 1(夏令时)0(不是夏令时)-1(未知)

calendar

星期一是默认的每周第一天,星期天是默认的最后一天。更改设置需调用calendar.setfirstweekday()函数。

calendar函数
calendar.calendar(year,w=2,l=1,c=6) 年日历
calendar.firstweekday() 返回当前每周起始日期的设置
calendar.month(year,month) 月日历
calendar.isleap(year) 是否闰年
calendar.leapdays(y1,y2) 返回在Y1,Y2两年之间的闰年总数
calendar.monthrange(year, month) Returns weekday of first day of the month and number of days in month
calendar.weekday(year,month,day) Returns the day of the week (0 is Monday)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python手册(Standard Library)--datetime+time+calendar 的相关文章

  • 用Excel做相关性分析

    一 概念理解 相关关系 变量之间存在着的非严格的不确定的关系 对它们进行深层次的分析 观察它们的密切程度 相关性分析 对变量之间相关关系的分析 即相关性分析 其中比较常用的是线性相关分析 用来衡量它的指标是线性相关系数 又叫皮尔逊相关系数
  • new的三种用法

    new的三种用法 第一种 创建一个新对象 Test p new Test 10 这里的new的用法是创建一个新的Test型的对象 该用法一共有三个步骤 1 申请一个空间 2 在申请的空间当中构造一个对象 并将该对象放置到空间中 3 将空间的
  • Ubuntu下NFS服务器配置及应用

    NFS文件系统仅占用系统挂载点 NFS服务器设定好分享的目录 home shares 其他客服端就可以将这个目录挂载到自己系统上的挂载点上 home shares就像自己的一个分区 但不占用自己的磁盘空间 虽然NFS有自己的协议及端口号 但
  • 必测的支付漏洞(一)——使用fiddler篡改支付金额

    互联网产品中常会遇到支付功能 测试人员测试这部分功能时一定要重视 因为如果这部分出现了较严重的bug 将会给公司带来不小的经济损失 如果你测出了问题领导也一定会高兴的 因此测试优先级很高 但具有一定难度 刚接触测试的小白们可能不知道支付功能
  • 五分钟成为记忆王

    一 记忆的面纱 1 记忆的含义 1 就在我嘴边上 有多少次你这样说过 就在我嘴边上 又有过多少次在你需要什么时候 任凭你如何拼命地想 就是想不起来 当然 这问题不是你一个人才有 几乎所有的人都受到过记忆力差的困扰 这也是人类的一个最常见的不
  • stm32 IO口的八种输入输出模式

    记录一下stm32 IO口的八种输入输出模式的学习 首先 可以看见stm32的输入输出模式有以上8种 先从简单的开始说吧 上拉输入和下拉输入 看图 由上图可见 当IO口设置为上拉输入的时候 IO口内部的上拉电阻就被接上了 从字面意思可以理解
  • Java异常总结

    1 异常的定义 定义 异常又称例外 是程序执行过程中发生的事件 它会终止程序的正常执行 2 异常的分类 Error 是JVM内部产生的 不需要程序员去解决 是不受检查异常 非代码性错误 Exception 是用户程序可能出现的异常 它是用来
  • 单片机关于推挽输出和开漏输出

    什么是推挽输出 推挽输出既可以输出高电平也可以输出低电平 推挽式输出电路 推挽式输出电路是由互补的两个三极管构成 所谓推拉 推是指推出去 就是输出为高电平是 电流是由内流向外的 形象的称之为推 拉就是从外部向内部拉 当输出为低电平时 电流由
  • java设计模式——享元模式(Flyweight Pattern)

    概述 面向对象技术可以很好地解决一些灵活性或可扩展性问题 但在很多情况下需要在系统中增加类和对象的个数 当对象数量太多时 将导致运行代价过高 带来性能下降等问题 享元模式正是为解决这一类问题而诞生的 享元模式通过共享技术实现相同或相似对象的

随机推荐

  • java 抓取网页_Java抓取网页数据

    有时候由于种种原因 我们需要采集某个网站的数据 但由于不同网站对数据的显示方式略有不同 本文就用Java给大家演示如何抓取网站的数据 1 抓取原网页数据 2 抓取网页JavaScript返回的数据 一 抓取原网页 这个例子我们准备从http
  • 基于Cordova插件创建app及打包成apk

    基于Cordova插件创建app及打包成apk 1 配置开发环境 一 下载并安装node js npm功能可以使用 二 利用npm安装cordova插件 三 配置JAVA ANDROID GRDLE的系统环境 1 java jdk jre设
  • ThreadLocal与局部变量

    ThreadLocal和线程局部变量有什么区别 我们先看一段代码 如下 public class ThreadLocalLearn static ThreadLocal
  • 华为OJ:ip地址与整数之间的转换

    原理 ip地址的每段可以看成是一个0 255的整数 把每段拆分成一个二进制形式组合起来 然后把这个二进制数转变成 一个长整数 举例 一个ip地址为10 0 3 193 每段数字 相对应的二进制数 10 00001010 0 00000000
  • html5里js里怎么写入sql语句,SQL语句在JavaScript中的应用

    有兴趣的朋友可以 QQ 85302520 联系我 或者 Email gongji at qq dot com 已经开放了 SVN checkout 地址 http code google com p jsql javascript sour
  • 无限级分类在DataGrid和DropDownList中的体现

    实现效果 Datagrid Dropdownlist 实现效果 Datagrid Dropdownlist 实现步骤 1 创建表 CREATE TABLE dbo mulType TypeId int IDENTITY 1 1 NOT NU
  • Qt树形控件QTreeView使用1——节点的添加删除操作 复选框的设置

    QtreeView是ui中最常用的控件 Qt中QTreeWidget比QTreeView更简单 但没有QTreeView那么灵活 QTreeWidget封装的和MFC的CTreeCtrl很类似 没有mvc的特点 1 QStandardIte
  • ps换证件照背景颜色

    日常工作生活学习中经常会用到各种不同底色的证件照 手上的证件照底色不符合要求怎么办呢 以红色底色的证件照换蓝色底色证件照为例 我们一起来看看如何用ps换证件照背景颜色 下面是原始的红底证件照 我们用ps photoshop 打开该红底证件照
  • 智慧监狱解决方案-最新全套文件

    智慧监狱解决方案 最新全套文件 一 建设背景 二 思路架构 三 建设方案 四 获取 智慧监狱全套最新解决方案合集 一 建设背景 智慧监狱 是 数字法治 智慧司法 信息系统建设的重要组成部分 其主要内容是在现有监狱信息建设的基础上 充分利用大
  • 【MM32F5270开发板试用】五、rt-thread 利用SPI接口驱动SD卡

    篇文章来自极术社区与灵动组织的MM32F5270开发板评测活动 更多开发板试用活动请关注极术社区网站 作者 Magicoe是攻城狮 之前SPI接的是个2 4寸的小屏幕 鉴于MM32F5270片上没有SDIO接口用的是SPI拓展的SD卡 反正
  • InputStream

    在java中InputStream是字节输入流 用来将文件中的数据读取到java程序中 InputStream是所有字节输入流的顶层父类 是一个抽象类 如果要用 需要使用子类 最常用的子类 FileInputStream 构造方法 File
  • Gogs服务重启及邮件相关配置

    如何重启Gogs服务 简单粗暴地说 其实也就两步 关闭服务 gt gt 开启服务 1 关闭服务 获得启动服务的进程PID 根据使用端口查找进程ID 如配置Gogs使用的web端口为3102 则输入命令lsof i 3102 即可查看占用该端
  • 网口压线顺序_网线线序排列以及八字口诀

    网线线序排列以及八字口诀 普通网线线序一般都是按照橙白 橙 绿白 蓝 蓝白 绿 棕白 棕这个顺序排列 的 也就是 568B 线序标准 而通常情况下百兆网络自用到其中的四根线 若是只有四根线 的 则任选四根 做线时对应水晶头的 1 2 3 6
  • AD软件画电路图笔记

    最近使用AD软件画了一个arduino的板子 自己画原理图库 pcb库 原理图 pcb图 以及后来打板和原材料购买 和后来的硬件电路焊接 及硬件电路测试和烧录程序 这是我整个流程下来记的笔记 分享给大家 一 AD软件新建项目 1 两库 原理
  • Flutter Android端启动白屏

    问题描述 Flutter 应用在 Android 端上启动时会有一段很明显的白屏现象 白屏的时长由设备的性能决定 设备性能越差 白屏时间越长 问题分析 其实启动白屏的问题在Android原生应用上也是一个常见问题 大致是因为从用户点击 La
  • GameofMir引擎架设传奇服务器【2:登录器配置】

    工具 1 gom引擎自带的登录器 这里没有自带的登录器 游戏运行不了 里面带有一些密码和UI相关的文件 2 绿盟配置器 当然也可以用其他的 这里使用的绿盟的免费版本 都解压后开始配置 这里进入绿盟的文件夹 把这几个文件复制到gom自带的登录
  • C关键字volatile

    其实我想看的 想做笔记的就是就是那个汇编例子 看来汇编例子有助于了解啊 以前听人说过 高手都能将每一句C语言对应一句汇编语言 C语言关键字volatile 1 C语言关键字volatile C语言关键字volatile 注意它是用来修饰变量
  • 【maven】scalac:error while loading <root>,Error accessing

    1 概述 今天运行flink程序 编译时报如下错误 意思是访问maven下载的jar包出错 但是这个jar包已经下载好了 于是我进入jar包所在的路径 发现该包的大小只有1KB 感觉是下载有问题 于是删除该jar包 然后在pom中reimp
  • 5款linux下的笔记软件

    Evernote是一个很好的笔记软件 但是却没有linux版本 下面介绍5款linux下最好的笔记软件 1 Springseed Springseed 是 Jono Cooper 和 Michael Harker 一起开发的 是一个使用非常
  • Python手册(Standard Library)--datetime+time+calendar

    文章目录 datetime datetime timedelta datetime date datetime datetime datetime time python中时间日期格式化符号 time time struct time 时间