Python日期操作学习笔记

yizhihongxing

Python日期操作学习笔记

日期和时间的数据类型

Python 中有两个表示日期和时间的主要数据类型:

  • date - 表示日期(年、月、日)
  • datetime - 表示日期和时间(年、月、日、时、分、秒)

创建日期对象

为了创建一个表示日期的对象,我们可以使用 date 类并指定年份、月份和日期作为参数。例如:

from datetime import date

d = date(2021, 9, 1)
print(d)

这会输出:2021-09-01

为了创建一个表示日期和时间的对象,我们可以使用 datetime 类并指定年份、月份、日期、小时、分钟和秒作为参数。例如:

from datetime import datetime

dt = datetime(2021, 9, 1, 12, 30, 45)
print(dt)

这会输出:2021-09-01 12:30:45

格式化日期

我们可以使用 strftime 方法将日期格式化为字符串。例如:

from datetime import datetime

dt = datetime(2021, 9, 1, 12, 30, 45)
formatted_date = dt.strftime("%Y-%m-%d %H:%M:%S")
print(formatted_date)

这会输出:2021-09-01 12:30:45

在上面的示例中,"%Y-%m-%d %H:%M:%S" 是一个格式字符串,指定了日期和时间应该以什么形式出现。其中:

  • %Y 表示年份(例如 2021)
  • %m 表示月份(例如 09)
  • %d 表示日期(例如 01)
  • %H 表示小时(例如 12)
  • %M 表示分钟(例如 30)
  • %S 表示秒(例如 45)

解析日期字符串

我们可以使用 strptime 方法将字符串解析为一个 datetime 对象。例如:

from datetime import datetime

date_string = "2021-09-01 12:30:45"
dt = datetime.strptime(date_string, "%Y-%m-%d %H:%M:%S")
print(dt)

这会输出:2021-09-01 12:30:45

在上面的示例中,"%Y-%m-%d %H:%M:%S" 是一个格式字符串,指定了如何解析日期字符串。

日期计算

Python 的 datetime 模块提供了许多方法来进行日期计算。例如,我们可以使用 timedelta 对象来将一个 datetime 对象与另一个 datetime 对象相加或相减。例如:

from datetime import datetime, timedelta

dt1 = datetime(2021, 9, 1)
dt2 = datetime(2021, 9, 15)
delta = dt2 - dt1
print(delta.days)

这会输出:14

在上面的示例中,我们计算了从 2021 年 9 月 1 日到 2021 年 9 月 15 日有多少天。

示例1:将字符串日期转为时间戳

将一个字符串日期转为时间戳(秒数),可以使用 datetime 和 time 模块。例如:

import datetime
import time

date_str = "2021-09-01 12:30:45"
dt = datetime.datetime.strptime(date_str, "%Y-%m-%d %H:%M:%S")
timestamp = int(time.mktime(dt.timetuple()))
print(timestamp)

这会输出:1630512645

在上面的示例中,我们首先将字符串日期 2021-09-01 12:30:45 解析为一个 datetime 对象。然后,使用 time.mktime() 函数将其转换为时间戳。

示例2:计算两个日期之间的天数

为了计算两个日期之间的天数,我们可以使用 datetime 模块。例如:

from datetime import datetime

date_str1 = "2021-09-01"
date_str2 = "2021-09-15"
date_format = "%Y-%m-%d"

date1 = datetime.strptime(date_str1, date_format)
date2 = datetime.strptime(date_str2, date_format)

delta = date2 - date1
print(delta.days)

这会输出:14

在上面的示例中,我们首先将字符串日期解析为 datetime 对象。然后计算两个日期之间的时间差,并从中提取出天数。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python日期操作学习笔记 - Python技术站

(0)
上一篇 2023年6月2日
下一篇 2023年6月2日

相关文章

  • Python与R语言的简要对比

    Python与R语言的简要对比 Python和R语言都是非常流行的数据科学和机器学习工具。虽然它们的应用领域有很多重叠之处,但在某些方面有很大的区别。在该比较中,我们将讨论Python和R语言之间的一些主要区别,以及它们各自的优缺点。 Python vs R 语言 入门门槛 对于初学者来说,Python比R语言更易于学习。Python拥有更加直观和更少的语法…

    python 2023年5月19日
    00
  • python实现淘宝秒杀聚划算抢购自动提醒源码

    首先,需要说明的是,自动抢购和自动提醒都是违反淘宝规定的行为,可能会对账号造成风险,请谨慎操作。 该攻略的主要思路是:模拟网页的请求,通过解析网页内容来获取商品信息,再通过自动化操作模拟人类的点击操作,达到抢购或提醒的效果。 具体步骤如下: 1.分析目标网页的结构和请求方式,获取必要的参数。 2.通过Python编写程序,模拟网页的请求获取网页内容。 3.解…

    python 2023年5月19日
    00
  • Python利用Selenium实现网站自动签到功能

    以下是Python利用Selenium实现网站自动签到功能的完整攻略: 准备工作 安装Python环境和pip包管理器。 安装selenium包用于自动化测试。 下载相应浏览器的webdriver,例如ChromeDriver或FirefoxDriver等。 实现步骤 导入必要的库文件。 from selenium import webdriver from…

    python 2023年5月19日
    00
  • 详解python校验SQL脚本命名规则

    下面就为大家详细讲解“详解python校验SQL脚本命名规则”的完整攻略。 校验SQL脚本命名规则的意义 在日常的软件开发中,我们常常需要使用SQL脚本对数据库进行操作。但是,当我们管理的数据库数量逐渐增多时,管理这些SQL脚本变得越来越困难。如果没有一套统一的命名规则,那么不同的开发者所编写的SQL脚本之间将会呈现出各种不一致的命名方式,这样不仅会增加团队…

    python 2023年6月3日
    00
  • python画图常规设置方式

    Python是一种非常流行的编程语言,也是一个非常好用的画图工具。Python提供了mpl_toolkits和matplotlib两个模块,可以帮助我们轻松地完成各种绘图任务。本文将为您介绍Python画图中的常规设置方式,以便您更好地使用Python进行数据可视化。 标题设置 一个好的图形应该包含一个清晰的标题。设置图形标题是一种常见的任务,在Python…

    python 2023年5月13日
    00
  • Python requests及aiohttp速度对比代码实例

    以下是关于Python requests及aiohttp速度对比的详细攻略: Python requests及aiohttp速度对比 Python requests库是一个流行的HTTP库,用于向Web服务器发送HTTP请求和接收响应。Python aiohttp库是一个异步HTTP客户端/服务器框架,用于向Web服务器发送HTTP请求和接收响应。以下是Py…

    python 2023年5月14日
    00
  • Python变量名详细规则详细变量值介绍

    Python变量名详细规则详细变量值介绍 Python变量的定义 在Python中,定义一个变量只需要给它赋值即可。比如:a = 1 Python变量命名规则 Python变量名必须是以字母或者下划线_开头,后面可以跟任意数量的字母、数字或者下划线。 以下是Python变量名的规则: 变量名必须以字母或者下划线 _ 开头 变量名不能以数字开头 变量名只能包含…

    python 2023年5月13日
    00
  • 用Python实现流星雨效果的方法详解

    用Python实现流星雨效果的方法详解 概述 流星雨效果是一种常见的网页特效,其效果是在网页上随机生成多条“流星”,营造出类似夜晚流星划过天际的感觉。本文将详细讲解如何用Python实现流星雨效果,包括生成流星、动态更新流星位置、实现背景动画等。 生成流星 生成流星的基本思路是:在一定范围内随机生成一些位置,然后对于每个位置,设定一个“角度”,根据这个角度计…

    python 2023年6月3日
    00
合作推广
合作推广
分享本页
返回顶部