Python基础06-日期和时间的操作方法

在Python中处理日期和时间是编程中常见的需求,无论是安排任务、记录日志还是分析数据。本文将介绍如何在Python中获取当前日期和时间、创建特定日期和时间、格式化日期和时间、解析字符串中的日期和时间、使用时间差、比较日期和时间、从日期/时间中提取组件、处理时区以及使用Unix时间戳。

1. 获取当前日期和时间

获取当前的日期和时间非常简单:

from datetime import datetime
now = datetime.now()
print(f"Current date and time: {now}")

2. 创建特定的日期和时间

创建一个过去或未来的具体时间点:

specific_time = datetime(2023, 1, 1, 12, 30)
print(f"Specific date and time: {specific_time}")

3. 格式化日期和时间

格式化日期和时间以适应不同的展示需求:

formatted = now.strftime("%Y-%m-%d %H:%M:%S")
print(f"Formatted date and time: {formatted}")

4. 从字符串解析日期和时间

将字符串解析为日期和时间对象:

date_string = "2023-01-01 15:00:00"
parsed_date = datetime.strptime(date_string, "%Y-%m-%d %H:%M:%S")
print(f"Parsed date and time: {parsed_date}")

5. 使用时间差

通过时间差可以在时间点之间前进或后退:

from datetime import timedelta
delta = timedelta(days=7)
future_date = now + delta
print(f"Date after 7 days: {future_date}")

6. 比较日期和时间

比较两个日期和时间:

if specific_time > now:print("Specific time is in the future.")
else:print("Specific time has passed.")

7. 从日期/时间中提取组件

提取年、月、日等日期/时间的组成部分:

year = now.year
month = now.month
day = now.day
hour = now.hour
minute = now.minute
second = now.second
print(f"Year: {year}, Month: {month}, Day: {day}, Hour: {hour}, Minute: {minute}, Second: {second}")

8. 处理时区

处理时区以适应不同时区的本地时间:

from datetime import timezone, timedelta
utc_time = datetime.now(timezone.utc)
print(f"Current UTC time: {utc_time}")
# 调整到特定时区(例如EST)
est_time = utc_time - timedelta(hours=5)
print(f"Current EST time: {est_time}")

9. 获取星期几

确定一周中的某一天:

weekday = now.strftime("%A")
print(f"Today is: {weekday}")

10. 使用Unix时间戳

与Unix纪元进行交流,将其时间戳转换为日期和时间:

timestamp = datetime.timestamp(now)
print(f"Current timestamp: {timestamp}")
# 将时间戳转换回datetime
date_from_timestamp = datetime.fromtimestamp(timestamp)
print(f"Date from timestamp: {date_from_timestamp}")

总结

Python的datetime模块提供了强大的日期和时间处理功能,从简单的获取当前时间到复杂的时区转换和Unix时间戳处理,都能轻松应对。掌握这些日期和时间操作方法对于任何需要处理时间序列数据的开发者来说都是一项基本技能。

civilpy:Python数据分析及可视化实例目录944 赞同 · 36 评论文章​编辑

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

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

相关文章

2024年Java接单平台强力推荐!各个都知名!

Java这几年真卷飞了,一点都不夸张。因此,很多程序员朋友都已经试着转方向、换赛道了。试着接单、找私活就是一大途径。当然,特别是有技术、又有相对空闲时间的朋友,更值得一试。既是增加收入的捷径,又可以提升自我——…

在Milk-v Duo上部署YOLOV8模型

建议自己编译images固件,我使用官方给的固件在部署中出现了一些问题,请参考: 编译Milkv-duo固件-CSDN博客 下载YOLOv8 git clone https://github.com/ultralytics/ultralytics.git 下载yolo_export.zip 下载链接:链接:百度网盘…

mysql常见语法操作笔记

1. 数据库的基本操作 1.1. MYSQL登录与退出 D:\phpstudy_pro\Extensions\MySQL5.7.26\bin 输入 mysql -uroot -proot -h127.0.0.1 退出的三种方法 mysql > exit; mysql > quit; mysql > \q; 1.2. MYSQL数据库的一些解释 注意:数据库就相当于文件夹 …

Nacos的简介及安装和使用

Nacos的简介及安装和使用 1. Nacos简介1.1 核心特性1.2 常见的注册中心1.3 Nacos结构图 2. 如何安装和配置Nacos?2.1 Nacos的安装2.2 如何使用Nacos? 1. Nacos简介 ​ Nacos是一个开源的动态服务发现、配置和服务管理平台,由阿里巴巴开发和维…

南京邮电大学数学实验A答案 | 《MATLAB数学实验》第三版课后习题答案

数学实验A 本仓库收集了2024年我在学习《数学实验A》课程期间完成的作业。课程使用的教材为《MATLAB数学实验》第三版,作者为胡良剑和孙晓君教授。 这个资源库的建立初衷是为了帮助南京邮电大学的同学们在学习过程中有一个参考的依据,减少一些无端浪费…

OSPF虚连接

OSPF虚连接 虚连接(Virtual link)是指在两台ABR之间通过一个非骨干区域建立的一条逻辑上的连接通道。 根据RFC 2328,在部署OSPF时,要求所有的非骨干区域与骨干区域相连,否则会出现有的区域不可达的问题。但是在实际应…

模糊测试—AFL——实战小记

一 安装环境: 在vm虚拟机上使用Ubuntu-22.04系统的镜像。 清华和科大的镜像都可以,下载下来的是ISO的压缩包,不用解压(出来的是一堆文件),在安装新的VM虚拟机时,在镜像源里面直接选择下载下来…

【学习笔记二十四】EWM补货策略和自动补货配置

一、EWM补货策略概述 1.计划补货 ①以联机或批处理模式启动 ②根据最大和最小数量计算补货 ③仅当库存量低于最低数量时才开始 ④四舍五入至最小补货数量的倍数 2.自动补货 ①在WT确认期间启动 ②根据最大和最小数量计算补货 ③只有当库存量低于最低数量时才开始 ④四舍…

MySQL Prepared语句(Prepared Statements)

在数据库应用中,很多SQL语句都会重复执行很多次,每次执行可能只是where条件中的变量值不同,但MySQL依然会解析SQL语法并生成执行计划。对于这类情况,可以利用prepared语句来避免重复解析SQL的开销。 文章目录 一、prepared语句优…

Java——继承与组合

和继承类似, 组合也是一种表达类之间关系的方式, 也是能够达到代码重用的效果。组合并没有涉及到特殊的语法 (诸如 extends 这样的关键字), 仅仅是将一个类的实例作为另外一个类的字段。 继承表示对象之间是is-a的关系,比如:狗是动物,猫是动…

模板(二)

文章目录 模板(二)1 非类型模板参数2. 模板的特化2.1. 概念2.2 函数模板特化2.3 类模板特化2.3.1 全特化2.3.2 偏特化2.3.3 类模板特化应用示例 3 模板的分离编译3.1 什么是分离编译3.2 模板的分离编译3.3 解决方法 4. 模板总结 模板(二&…

鸿蒙OpenHarmony【LED外设控制】 (基于Hi3861开发板)

概述 OpenHarmony WLAN模组基于Hi3861平台提供了丰富的外设操作能力,包含I2C、I2S、ADC、UART、SPI、SDIO、GPIO、PWM、FLASH等。本文介绍如何通过调用OpenHarmony的NDK接口,实现对GPIO控制,达到LED闪烁的效果。其他的IOT外设控制&#xff0…

谁说快是转瞬即逝,PUMA说快是永恒

巴黎奥运会、欧洲杯、美洲杯......2024年可以说是名副其实的体育大年。在各种全球体育盛事营造的浓厚体育氛围当中,各大体育品牌纷纷开始发力。 4月10日,全球领先运动品牌PUMA率先发布了其为本届奥运会准备的17套奥运装配,包括瑞士、瑞典等国…

Linux多进程(一)创建进程与进程控制

一、进程状态 进程一共有五种状态分别为:创建态,就绪态,运行态,阻塞态(挂起态),退出态(终止态)其中创建态和退出态维持的时间是非常短的,稍纵即逝。主要是就绪态, 运行态, 挂起态三者之间的状态切换。 就绪…

小程序使用阿里巴巴矢量图标库

一、登录官网 www.iconfont.cn 二、在搜索框中搜索想要的图标,将鼠标移动到图标上会看到三个标记 可以使用下载,直接使用: 可以使用css文件使用: 首先点击购物车样式的选项,而后点击下图位置: 点击自己创…

Flume的安装及使用

Flume的安装及使用 文章目录 Flume的安装及使用Flume的安装1、上传至虚拟机,并解压2、重命名目录,并配置环境变量3、查看flume版本4、测试flume5、flume的使用 Flume的安装 1、上传至虚拟机,并解压 tar -zxvf apache-flume-1.9.0-bin.tar.g…

Git TortoiseGit 详细安装使用教程

前言 Git 是一个免费的开源分布式版本控制系统,是用来保存工程源代码历史状态的命令行工具,旨在处理从小型到非常大型的项目,速度快、效率高。《请查阅Git详细说明》。TortoiseGit 是 Git 的 Windows Shell 界面工具,基于 Tortoi…

05_FreeRTOS信号量

信号量 信号量信号量简介常用信号量API函数 信号量 信号量简介 信号量(Semaphore)是一种实现任务间通信的机制,可以实现任务之间同步或临界资源的互斥访问,常用于协助一组相互竞争的任务来访问临界资源。在多任务系统中&#xf…

wireshark RTP分析参数

主要看丢弃和Delta, 丢弃就是丢掉的udp包,所占的比率 Delta是当前udp包接收到的时间减去上一个udp包接收到的时间 根据载荷可以知道正确的delta应该是多少,比如G711A,ptime20,那么delta理论上应该趋近于20. 这里的de…

python创建线程和结束线程

👽发现宝藏 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【点击进入巨牛的人工智能学习网站】。 python创建线程和结束线程 在 Python 中,线程是一种轻量级的执行单元&#xff…