Python学习之DateTime、TimeDelta、Strftime(Format)及其示例

news2024/9/22 15:33:36

文章目录

  • 前言
  • 一、pandas是什么?
  • 二、使用步骤
    • 1.引入库
    • 2.使用date.today()打印日期
    • 3.Python当前日期和时间:now() today()
      • 总结
    • 4.如何使用 Strftime()格式化日期和时间输出
      • 1. 首先,我们将看到一个简单的如何格式化年份的步骤。通过一个例子来理解。
      • 2.现在,如果将(“%Y”)替换为小写字母(即“%y”)并执行代码,则仅输出(23),而不显示(2023)。年份的世纪将不会显示
      • 3.Strftime函数可以分别声明日期,日,月和年。同样,在strftime函数中对控制代码进行小的更改后,即可设置文本样式的格式。
      • 4.借助“strftime”函数,我们还可以检索本地系统时间,日期或日期时间。
      • 5.“strftime”函数允许您以24小时格式或12小时格式调用时间。
      • 总结
    • 5.如何使用Timedelta对象
      • 1.要运行Timedelta对象,您需要先声明import语句,然后执行代码
      • 2.让我们获取今天的日期和时间,以检查我们的导入声明是否运行良好。执行代码后,它会打印出今天的日期
      • 3.我们将看到如何通过delta对象计算离现在now()一年后的日期。当我们运行代码时,它将给出预期的输出。
      • 4.如何使用时间增量(time delta)从当前日期和时间计算未来日期的另一个示例
      • 总结
  • 结语


前言

在Python中,date,time和datetime类提供了许多函数来处理日期、时间和时间间隔(time interval)。 Date和DateTime是Python中的对象,因此在操作它们时,实际上是在操作对象,而不是字符串或时间戳。每当您操纵日期或时间时,都需要导入DateTime函数。
在这里插入图片描述


一、pandas是什么?

Python中的DateTime类主要分为5类。

date —日期(月,日,年)
time-一天中时间(小时,分钟,秒,微秒)
DateTime-时间和日期的组合(月,日,年,小时,秒,微秒)
time delta —用于操纵日期的时间段
tzinfo —处理时区的抽象类

二、使用步骤

1.引入库

代码如下(示例):

# 在为DateTime运行代码之前,请务必导入date-time模块
from datetime import date
from datetime import time
from datetime import datetime
# 这些import语句是Python库中预定义的功能,可让您无需编写任何代码即可操纵日期和时间。

# 创建日期对象的实例。
def main():
	today = date.today()
	print("今天的日期是:", today)
# 打印日期并运行代码。
main()

在这里插入图片描述

2.使用date.today()打印日期

date.today函数具有与之关联的几个属性。我们可以单独打印日/月/年以及其他内容

代码如下(示例):

from datetime import date
from datetime import time
from datetime import datetime

def main():
	today = date.today()
	print("今天的日期是:", today)
	# 打印日期的拆分格式
	print("拆分日期:", today.year, today.month, today.day)
	
main()

在这里插入图片描述

from datetime import date
from datetime import time
from datetime import datetime


def main():
	today = date.today()
	wd = today.weekday()
	days = ["星期一","星期二","星期三","星期四","星期五","星期六","星期日"]
	print("今天是星期几:",wd)
	print("今天应该是星期几呢?", days[wd])

	
main()

在这里插入图片描述

3.Python当前日期和时间:now() today()

代码示例如下:

# 像日期对象一样,我们在Python中也可以使用日期时间(datetime)对象。它给出日期和时间小时、分钟、秒和毫秒。
from datetime import date
from datetime import time
from datetime import datetime

def main():
	today = datetime.now()
	print("当前时间是:",today)
	
main()

在这里插入图片描述

# 使用datetime对象,您还可以调用time类。
# 假设我们只想打印当前时间而不显示日期。
from datetime import date
from datetime import time
from datetime import datetime

def main():
	t = datetime.time(datetime.now())
	print("当前时间是:",t)

main()

在这里插入图片描述
我们将工作日索引应用到工作日的ArrayList中,以了解今天是哪一天

根据当前工作日的不同,为工作日的运算符(wd)分配(0–6)编号。在这里,我们声明了几天的列表数组(星期一,星期二,星期三…星期日)。
使用该索引值可以知道是哪一天。在我们的例子中,它是#3,代表星期四,因此在输出中,它将打印出“今天是星期四”。

总结

date —操作日期(月,日,年)
时间-一天中的时间(小时,分钟,秒,微秒)
DateTime-时间和日期的组合(月,日,年,小时,秒,微秒)
timedelta —用于操纵日期的时间长度
tzinfo —处理时区的抽象类
使用DateTime对象

在执行代码之前必须导入DateTime对象
使用date.today函数可打印单个日期/月份/年份以及索引日期
使用date.time对象获取小时、分钟、秒和毫秒的时间

4.如何使用 Strftime()格式化日期和时间输出

到目前为止,我们已经了解了如何在Python中使用DateTime和Date对象。我们将进一步学习如何使用格式化功能来格式化时间和日期。

1. 首先,我们将看到一个简单的如何格式化年份的步骤。通过一个例子来理解。

from datetime import date
from datetime import time
from datetime import datetime

def main():
	now = datetime.now()
	print(now.strftime("%Y"))

main()

在这里插入图片描述
我们使用了“strftime函数”用于格式化。
此函数使用不同的控制码提供输出。
每个控制代码类似于不同的参数,例如年,月,周日和日期[(%y /%Y-年),(%a /%A-工作日,(%b /%B-月),(%d-月中的天)]]。
在我们的例子中,(“%Y”)类似于年份,它打印出带有世纪的完整年份(例如,2023年)。

2.现在,如果将(“%Y”)替换为小写字母(即“%y”)并执行代码,则仅输出(23),而不显示(2023)。年份的世纪将不会显示

from datetime import date
from datetime import time
from datetime import datetime

def main():
	now = datetime.now()
	print(now.strftime("%y"))

main()

在这里插入图片描述

3.Strftime函数可以分别声明日期,日,月和年。同样,在strftime函数中对控制代码进行小的更改后,即可设置文本样式的格式。

from datetime import date
from datetime import time
from datetime import datetime

def main():
	now = datetime.now()
	print(now.strftime("%Y %B %d,%a"))

main()

在strftime函数内部,如果将(%a)替换为大写字母A,即(%A),输出将输出为“Thursday”,而不是缩写“Thu”。
在这里插入图片描述

4.借助“strftime”函数,我们还可以检索本地系统时间,日期或日期时间。

%C-表示本地日期和时间
%x-表示本地日期
%X-表示本地时间

from datetime import date
from datetime import time
from datetime import datetime

def main():
	now = datetime.now()
	print(now.strftime("%c"))
	print(now.strftime("%x"))
	print(now.strftime("%X"))
main()

在这里插入图片描述

5.“strftime”函数允许您以24小时格式或12小时格式调用时间。

from datetime import date
from datetime import time
from datetime import datetime

def main():
	now = datetime.now()
	print(now.strftime("%I:%M:%S %p"))
	print(now.strftime("%H:%M"))

main()

在这里插入图片描述

总结

使用“strftime”函数更改年份的格式
分别打印日期、日期、月份和年份,
格式化时间为12小时或24小时模式

5.如何使用Timedelta对象

使用timedelta对象,您可以计算未来和过去的时间。换句话说,预测任何特殊的日期,日期或时间都是一个时间跨度。

请记住,此功能不是用于打印时间或日期,而是用于计算未来或过去的时间内容。让我们看一个例子,以更好地理解它。

1.要运行Timedelta对象,您需要先声明import语句,然后执行代码

from datetime import timedelta

print(timedelta(days = 365, hours = 8, minutes = 15))

在这里插入图片描述

2.让我们获取今天的日期和时间,以检查我们的导入声明是否运行良好。执行代码后,它会打印出今天的日期

from datetime import datetime
from datetime import timedelta

print(timedelta(days = 365, hours = 8, minutes = 15))
print("今天是:" ,str(datetime.now()))

在这里插入图片描述

3.我们将看到如何通过delta对象计算离现在now()一年后的日期。当我们运行代码时,它将给出预期的输出。

from datetime import datetime
from datetime import timedelta

print(timedelta(days = 365, hours = 8, minutes = 15))
print("今天是:" ,str(datetime.now()))
print("一年之后的今天是:", str(datetime.now() + timedelta(days = 365)))

在这里插入图片描述

4.如何使用时间增量(time delta)从当前日期和时间计算未来日期的另一个示例

from datetime import datetime
from datetime import timedelta

print(timedelta(days = 365, hours = 8, minutes = 15))
print("今天是:" ,str(datetime.now()))
print("一个星期后四天的是:", str(datetime.now() + timedelta(weeks = 1, days = 4)))

在这里插入图片描述

总结

使用timedelta对象,您可以计算未来和过去的时间
计算从当前时间到特殊日期(生日)剩余的总天数
计算从当前时间算起的特定天(生日)经过的总天数


结语

为了以简单和复杂的方式处理日期和时间,DateTime模块提供了不同的时间类或类别,以上就是对python代码中运用datetime模块的方法总结,希望对看到的小伙伴有帮助。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/453130.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用buildroot编译完整系统【IMX6ULLPRO】

目录 构建 IMX6ULL Pro 版的根文件系统 编译系统 ​编辑 镜像文件 构建 IMX6ULL Pro 版的根文件系统 配置文件说明 编译系统 下面以 100ask_imx6ull_pro_ddr512m_systemV_qt5_defconfig 配置文 件为例,在 ubuntu 终端上说明 Buildroot 的配置过程&#x…

玩转ChatGPT:辅助编程

一、写在前面 首先让小Chat介绍自己在编程方面的天赋: 总结起来:TA掌握了海量的编程知识,能做到自动代码生成、代码审查优化、编程教学辅导以及实时问题解答。我问TA学习了多少案例,TA说:忘了,但保证够用。…

OpenCV-手势语言识别

OpenCV-手势语言识别 OpenCV-手势语言识别Python环境、TensorFlow环境设置直方图模型保存set_hand_hist.py相关代码如下:载入手势图片 OpenCV-手势语言识别 本部分包括Python环境、TensorFlow环境和OpenCV-Python环境。 Python环境、TensorFlow环境 需要Python 3…

Spring Boot-入门、热部署、配置文件、静态资源

Spring Boot Spring Boot概述 一、微服务概述 1、微服务 微服务(Microservices)是一种软件架构风格。微服务是以专注单一责任与功能的小型功能区块 (Small Building Blocks)为基础;利用模块化的方式组合出复杂的大…

DockerImage镜像版本说明

参考文章 1、https://medium.com/swlh/alpine-slim-stretch-buster-jessie-bullseye-bookworm-what-are-the-differences-in-docker-62171ed4531d 2、https://stackoverflow.com/questions/52083380/in-docker-image-names-what-is-the-difference-between-alpine-jessie-stret…

顺序表 和 链表 的区别

顺序表 基于数组 就是对数组进行相关的操作 进行存储数据 数组有个很大的缺点就是 可能会产生内存浪费 针对数组这一缺点 就产生了链表 链表顾名思义 就是像链条一样将数据串起来 链表是将内存中的小空间利用起来 让内存的利用率提高 但是也产生了很大的缺点 就是不能随…

数据通信基础 - 差错控制(奇偶校验、海明码、CRC循环冗余校验码)

文章目录 1 概述1.1 检错和纠错1.2 差错控制原理 2 差错控制的方法2.1 奇偶校验2.2 海明码2.3 CRC循环冗余校验码 3 扩展3.1 网工软考真题 1 概述 1.1 检错和纠错 无论通信系统如何可靠,都不能做到完美无缺。因此,必须考虑怎样发现和纠正信号传输中的差…

【实用教程】教你制作好看的论文区位图

区位图是反映目标区所在位置和与周边地区自然、经济相互作用关系的体现区位的地图。好的区位图能为论文打好专业的基调,给读者留下更好观感,是科研论文不可或缺的一部分。 层次:面向国际期刊的区位图一定要从国际角度出发,清楚表示…

第一性原理差分电荷密度计算能得到什么数据?

第一性原理差分电荷密度(DFT)计算是一种用于计算分子和材料结构的计算化学方法。它基于物理学原理和量子力学理论,通过解决薛定谔方程来计算电子在分子和材料结构中的行为。DFT是一种非常重要的计算方法,因为它可以提供关于分子和…

自媒体必备素材库,免费、商用,赶紧马住~

自媒体经常需要用到各类素材,本期就给大家安利6个自媒体必备的素材网站,免费、付费、商用都有,建议收藏起来~ 1、菜鸟图库 https://www.sucai999.com/video.html?vNTYwNDUx 菜鸟图库可以找到设计、办公、图片、视频、音频等各种素材。视频素…

托福高频真词List03 // 附阅读真题

目录 4月23日单词 4月23日真题 4月23日单词 adjacentneighboringnearbyadj 毗邻的dependablereliableadj 可靠的 chronology a list that pairs past events with dates n 年表remarkably closeextremely close极为接近competenceabilityn 才能supplementadd tov 补充supplem…

Linux_红帽8学习笔记分享_6

Linux_红帽8学习笔记分享_6 文章目录 Linux_红帽8学习笔记分享_61. RPM软件包的使用技巧1.1如何查询指定软件包是否安装1.2如何删除指定软件包1.3如何安装指定软件包1.5依赖关系 2. YUM软件仓库的配置及使用2.1修改YUM软件仓库的配置文件 3.YUM常见命令使用技巧3.1查询指定软件…

Django框架之创建项目、应用并配置数据库

django3.0框架创建项目、应用并配置数据库 创建项目 进入命令行 新建一个全英文的目录 进入目录 输入命令 django-admin startproject project 项目目录层级 查看当前目录层级 tree /f 目录文件说明 创建数据库 做一个学生管理系统做演示,使用navicat创建数据…

【LPC55s69】使用FAL分区管理与easyflash变量管理

文章目录 1.FAL组件1.1什么是FAL1.2 使用ENV配置FAL1.3 FAL SFUD 移植1.4 FAL SFUD 测试用例1.5 测试结果 2.DFS文件系统2.1 什么是DFS2.2 DFS架构2.3 使用ENV配置DFS2.4 DFS挂载到FAL分区测试2.5 测试结果 3.Easyflash移植到FAL分区3.1 简述EasyFlash3.2EasyFlash软件包使用3.…

Docker的数据管理(dockerfile等)

文章目录 一、管理docker容器中数据1、 数据卷2、数据卷容器 二、容器互联(使用centos镜像)三、Docker 镜像创建1、基于现有镜像创建2、基于本地模板创建3、基于Dockerfile创建 四、Dockerfile操作常用的指令:五、Dockeerfile案例 一、管理docker容器中数…

HNU数据结构与算法分析-小班7

HNU数据结构与算法分析-小班7

【Python】可视化KITTI激光雷达点云绘制立体框

前言 最近在复现PointRCNN论文过程中发现没有可视化代码,于是查找资料找到了: pointRCNN 结果可视化——tiatiatiatia 按照参考链接下载代码【轮子库】并可视化成功了 mayavi库的学习 主要是利用了mlab模块: Mayavi2 旨在提供一个简单…

隐私计算商业化,原语科技的开源路线是否最优解?

2023年2月,《数字中国建设整体布局规划》出台,首次对我国数字中国建设提出了宏观规划。其中,尤为值得关注的是隐私计算领域。 隐私计算能够实现数据的所有权和使用权分离,可以在保护个人数据隐私安全的基础上,推动数字…

《Linux0.11源码解读》理解(一) 从开机到加载bootsec

计算机启动时, 内存(RAM)没有任何东西, 自然也无法跑操作系统. 但是可以执行固化在ROM里面的BIOS程序. 在按下电源键的一刻. CPU的cs和ip寄存器硬件被设置为0xf000和0xfff0, 于是cs:ip也就指向0xffff0这个地址, 而这个地址正是指向了ROM的BIOS范围(这里是0xfe000~0xfffff, 20根…

Zuul源码解析(二)

Zuul 的自动配置 ZuulProxyAutoConfiguration 如何触发 如上图,在 spring.factory 中配置 ZuulProxyAutoConfiguration 自动配置了,直接点进去 如上图所示,发现这有个条件注解,需要有 org.springframework.cloud.netflix.zuul.Zu…