【Python】日期和时间模块

在这里插入图片描述


个人主页:【😊个人主页】
系列专栏:【❤️Python】


文章目录

  • 前言
  • 时间元组
  • datetime 模块
    • datetime类
      • 获取当前日期和时间
    • timedelta类
      • 日期和时间运算
    • strftime()方法
      • 格式化
      • 时间日期格式化符号
    • strptime()方法
  • Time 模块
    • Time 模块内置函数
    • Time 模块两个重要属性
  • 日历(Calendar)模块
      • 打印日历
      • 判断是否为闰年
    • 日历模块内置函数


前言

试想一下,当我们想为我们的程序添加显示时间的功能或者我们想要实现在程序中获取当前时间,这个时候,时间模块就是我们不可绕开的话题,日期和时间的处理通常也是我们学习一门语言的重难点,但很可惜在大多Python教材中都忽略这一知识点,有些甚至并未提及,事实上,Python 程序能用很多方式处理日期和时间,今天我们就来详细的介绍一下Python中的日期和时间模块。想了解更多Python内容请订阅内容【Python系列教程】

在这里插入图片描述


时间元组

时间元组(也称为结构时间)是一个表示时间的元组,它包含了九个元素,分别表示年、月、日、时、分、秒、一周中的第几天、一年中的第几天以及夏令时(通常为-1,表示不是夏令时)。时间元组是由time模块中的localtime()、gmtime()等函数返回的,也可以直接使用一个包含九个元素的元组来表示。
在这里插入图片描述
我们可以使用time.localtime()函数获取当前时间的时间元组:

import time  
# 获取当前时间的时间元组  
current_time_tuple = time.localtime()  
print("当前时间的时间元组:", current_time_tuple)

在这里插入图片描述
同样的我们可以通过一个包含九个元素的元组来直接创建一个时间元组:

# 创建一个时间元组表示2023年4月1日12时0分0秒  
time_tuple = (2023, 4, 1, 12, 0, 0, 5, 91, -1)  
print("创建的时间元组:", time_tuple)

在这里插入图片描述
在这里插入图片描述

datetime 模块

datetime类

datetime类datetime库中最重要的类之一,它表示一个日期和时间的对象。datetime类包含了年、月、日、时、分、秒等属性,可以通过对象的属性获取具体的日期和时间信息。

  • date:表示日期(年、月、日)
  • time:表示时间(时、分、秒、微秒)
  • datetime:表示日期和时间
  • timedelta:表示两个日期或时间之间的差异

获取当前日期和时间

from datetime import datetime
# 获取当前日期和时间  
now = datetime.now()  
print("当前日期和时间:", now)  

在这里插入图片描述

from datetime import datetime
cur_datetime = datetime.now()
print("当前日期和时间:", cur_datetime)
print("当前年份:", cur_datetime.year)
print("当前月份:", cur_datetime.month)
print("当前日期:", cur_datetime.day)
print("当前小时:", cur_datetime.hour)
print("当前分钟:", cur_datetime.minute)
print("当前秒数:", cur_datetime.second)

在这里插入图片描述

timedelta类

timedelta类表示两个日期或时间之间的差异,可以用于日期和时间的计算。可以通过timedelta类的属性和方法进行日期和时间的加减操作。

日期和时间运算

from datetime import datetime, timedelta# 获取当前日期和时间
now = datetime.now()
print("当前日期和时间:", now)
one_day = timedelta(days=1)
yesterday = now - one_day
tomorrow = now + one_day
# 日期和时间运算
one_week = timedelta(weeks=1)
print("一周后的日期:", now + one_week)
print("昨天的日期和时间:", yesterday)
print("明天的日期和时间:", tomorrow)

在这里插入图片描述

strftime()方法

strftime()方法将datetime对象转换为指定格式的字符串。可以通过指定格式化字符串来获取不同精度的日期和时间信息。

time.strftime(format[, t])

格式化

import time
# 格式化成2016-03-20 11:45:39形式
print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))
# 格式化成Sat Mar 28 22:24:24 2016形式
print(time.strftime("%a %b %d %H:%M:%S %Y", time.localtime()))
# 将格式字符串转换为时间戳
a = "Sat Mar 28 22:24:24 2016"
print(time.mktime(time.strptime(a, "%a %b %d %H:%M:%S %Y")))

在这里插入图片描述

时间日期格式化符号

在这里插入图片描述

strptime()方法

strptime()方法将字符串解析为datetime对象。可以通过指定解析字符串的格式,将字符串转换为datetime对象

from datetime import datetimedate_string = "2024-07-13 12:34:56"
parsed_datetime = datetime.strptime(date_string, "%Y-%m-%d %H:%M:%S")
print("解析后的日期和时间:", parsed_datetime)

在这里插入图片描述

Time 模块

time模块提供了各种与时间相关的函数。它主要用于底层的时间操作,比如获取当前时间戳、格式化时间和解析时间字符串等。

import time  
# 获取当前时间戳  
timestamp = time.time()  
print("当前时间戳:", timestamp)  
# 格式化当前时间  
formatted_time = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime())  
print("格式化后的时间:", formatted_time)

在这里插入图片描述

Time 模块内置函数

在这里插入图片描述

Time 模块两个重要属性

在这里插入图片描述

日历(Calendar)模块

calendar模块提供了处理年历和月历的函数,比如生成一个月的日历、判断某年是否是闰年等。
注:星期一是默认的每周第一天,星期天是默认的最后一天。更改设置需调用calendar.setfirstweekday()函数

打印日历

import calendar
cal = calendar.month(2016, 1)
print("以下输出2016年1月份的日历:")
print(cal)

在这里插入图片描述

判断是否为闰年

import calendar  
# 判断2024年是否是闰年  
is_leap = calendar.isleap(2024)  
print("2024年是闰年吗?", is_leap)  

在这里插入图片描述

日历模块内置函数

在这里插入图片描述
在这里插入图片描述

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

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

相关文章

编译适用于 Apple Silicon Macs 的 Chromium 教程

本教程将指导你如何在 Apple Silicon Macs 上编译 Chromium,包括所需的系统要求、工具安装、源码获取、环境配置、编译和运行步骤。 一、系统要求 Apple Silicon Mac(如 M1、M2)。安装 Xcode 和 macOS SDK(通过 App Store 安装最…

AWDAWFAAFAWAWFAWF

创建两张表:部门(dept)和员工(emp) 创建视图v_emp_dept_id_1,查询销售部门的员工姓名和家庭住址 创建视图v_emp_dept,查询销售部门员工姓名和家庭住址及部门名称 创建视图v_dept_emp_count(dept…

Ubuntu使用Nginx部署uniapp打包的项目

使用uniapp导出web项目: 安装: sudo apt install nginx解压web.zip unzip web.zip移动到/var/www/html目录下: sudo cp -r ~/web/h5/ /var/www/html/重启Nginx: sudo service nginx restart浏览器访问:http://19…

Java高频面试基础知识点整理4

干货分享,感谢您的阅读!背景​​​​​​高频面试题基本总结回顾(含笔试高频算法整理) 最全文章见:Java高频面试基础知识点整理 (一)Java基础高频知识考点 针对人员: 1.全部人员都…

算法学习笔记(8.4)-完全背包问题

目录 Question: 图例: 动态规划思路 2 代码实现: 3 空间优化: 代码实现: 下面是0-1背包和完全背包具体的例题: 代码实现: 图例: 空间优化代码示例 Question: 给定n个物品…

Tomcat组件概念和请求流程

Tomcat:是一个Servlet容器(实现了Container接口)&#xff0c;容器分层架构从上到下分为。Engine(List<Host>)->Host(List<Context>)->Context(List<Wrapper>)->Wrapper(List<Servlet>); Engine:引擎&#xff0c;Servlet 的顶层容器&#xff0…

UML建模案例分析-类图中的关系

概要 类图之间的关系比较多&#xff0c;绝大多数情况下重点关注的还是关联关系、组合、聚合这三种&#xff0c;最终是如何对应到代码上的。 例子 以订单为例&#xff1a;订单和订单项之间是组合关系&#xff0c;这和数据库实体之间不一样。数据库实体有主外键&#xff0c;开…

Java聚合跑腿系统对接云洋聚合跑腿系统源码低价快递小程序APP公众号源码

一站式解决方案 &#x1f680;引言&#xff1a;跑腿服务的市场需求与聚合趋势 在快节奏的现代生活中&#xff0c;跑腿服务成为了越来越多人的选择。为了满足这一市场需求&#xff0c;各大跑腿平台纷纷涌现。然而&#xff0c;如何将这些平台进行有效整合&#xff0c;提供更为便…

比特币交易繁忙的一天

早晨:市场开盘与准备工作 6:00 AM - 全球市场监测 交易员们早早起床,开始监测全球市场动态,尤其是亚洲市场的动向。通过查看新闻、分析报告和市场数据,了解可能影响比特币价格的因素。 7:00 AM - 团队会议 召开晨会,讨论当天的交易策略。团队分析前一天的交易情况,评…

HTML网页大设计-家乡天水

代码下载: https://pan.quark.cn/s/6bad4cfaefda

Windows下vscode配置C++环境

一、vscode下载及安装 vscode官网 选安装位置。 勾选这几项。 1.vscode界面中文配置 &#xff08;1&#xff09;点击扩展小图标&#xff0c;搜索插件&#xff0c;找到插件Chinese (Simplified) (简体中文) Language Pack&#xff0c;点击install。 &#xff08;2&#xf…

【vue组件库搭建07】Vitest单元测试

vitest官网 vue-test-utils 我们的测试框架选择的是 Vitest 和 vue-test-utils。两者的关系为&#xff1a; Vitest 提供测试方法&#xff1a;断言、Mock 、SpyOn 等方法。vue-test-utils: 挂载和渲染组件&#xff1a; Vue Test Utils 允许您在隔离中挂载组件&#xff0c;这意…

实用机器学习(快速入门)

前言 因为需要机器学习的助力&#xff0c;所以&#xff08;浅浅&#xff09;进修了一下。现在什么东西和AI结合一下感觉就好发文章了&#xff1b;我看了好多学习视频&#xff0c;发现机器学习实际上是数学&#xff0c;并不是常规的去学习代码什么的&#xff08;虽然代码也很简…

我应该使用 Pinia 还是 Vuex?

大家好,我是CodeQi! 一位热衷于技术分享的码仔。 当项目逐渐变大时,状态管理的问题开始显现了出来。这时,两个强大的状态管理工具:Vuex 和 Pinia。该选择哪一个呢? 今天带各位大佬对比下两者的优势在何处,以及如何选择合适的状态管理库! 什么是 Vuex? Vuex 是 Vue.j…

时间管理的6张清单:做个时间清单控,提高时间颗粒度!

时间管理管理的到底是什么&#xff1f;我觉得其根本就是时间的颗粒度。这与大多数行业精英的时间管理不谋而合&#xff0c;也就是身段越高&#xff0c;时间管理的颗粒度越高。比尔盖茨的颗粒度是5分钟&#xff0c;精确到与人握手&#xff0c;按秒来安排&#xff01;接下来&…

Amesim-帮助文件翻译与总结-tigger(滞环)

元件应用说明 滞环一般应用于控制策略制定&#xff0c;该原件类似于一个开关&#xff0c;当输入值大于设置的high input threshold Value时输出high out value&#xff1b;小于low input threshold value时输出low output value。若输出值在high input threshold Value与low i…

大模型应用中CoT(思维链)技术详细介绍

大模型应用中CoT&#xff08;思维链&#xff09;技术详细介绍 1. 背景 在自然语言处理&#xff08;NLP&#xff09;领域中&#xff0c;尤其是语言模型&#xff08;如GPT-3, BERT等&#xff09;的应用中&#xff0c;理解和推理复杂的文本信息变得越来越重要。Chain-of-Thought…

01. 课程简介

1. 课程简介 本课程的核心内容可以分为三个部分&#xff0c;分别是需要理解记忆的计算机底层基础&#xff0c;后端通用组件以及需要不断编码练习的数据结构和算法。 计算机底层基础可以包含计算机网络、操作系统、编译原理、计算机组成原理&#xff0c;后两者在面试中出现的频…

走进linux

1、为什么要使用linux 稳定性和可靠性&#xff1a; Linux内核以其稳定性而闻名&#xff0c;能够持续运行数月甚至数年而不需要重新启动。这对于服务器来说至关重要&#xff0c;因为它们需要保持长时间的稳定运行&#xff0c;以提供持续的服务 安全性&#xff1a; Linux系统…

解锁甘肃平凉传统面制品,大烤馍来袭

在平凉这片广袤而多彩的土地上&#xff0c;美食犹如璀璨星辰&#xff0c;点缀着人们的生活。其中各式各样的传统面点以其独特的风味和魅力&#xff0c;散发着诱人的香气。 食家巷大烤馍&#xff0c;作为甘肃传统面制品的代表之一&#xff0c;承载着悠久的历史和深厚的文化底蕴。…