浅谈Python中用datetime包进行对时间的一些操作

浅谈Python中用datetime包进行对时间的一些操作

Python标准库中的datetime模块提供了多种处理日期和时间的工具。本文将介绍datetime模块中最常用的类和方法,以及如何使用这些类和方法进行日期和时间的格式化、计算、比较等操作。

datetime类

datetime类是日期和时间的基础类,它包含年、月、日、时、分、秒和微秒等信息。datetime类的初始化方法为:

datetime(year, month, day[, hour[, minute[, second[, microsecond[, tzinfo]]]]])

其中,year、month、day是必选参数,hour、minute、second、microsecond、tzinfo为可选参数。下面是一个创建datetime对象的示例:

import datetime

dt = datetime.datetime(2022, 1, 1)
print(dt)

输出结果为:2022-01-01 00:00:00,其中时间部分小时、分钟、秒和微秒默认为0。

timedelta类

timedelta类表示日期和时间之间的差距,可以通过加、减timedelta对象来进行日期和时间的计算。timedelta类的初始化方法为:

timedelta([days[, seconds[, microseconds[, milliseconds[, minutes[, hours[, weeks]]]]]]])

下面是一个计算日期差距的示例:

import datetime

dt1 = datetime.datetime(2022, 1, 1)
dt2 = datetime.datetime(2022, 1, 2)
delta = dt2 - dt1

print(delta.days)    # 输出结果为1

strftime方法

strftime方法可以将datetime对象转换为指定格式的字符串。它需要一个格式字符串参数,格式字符串中包含一些占位符,用于表示日期和时间的各个部分。下表列出了strftime方法中常用的占位符:

占位符 说明
%Y 年份,4位数字
%m 月份,2位数字(01-12)
%d 日子,2位数字(01-31)
%H 小时,24小时制(00-23)
%M 分钟,2位数字(00-59)
%S 秒数,2位数字(00-61)
%f 微秒,6位数字
%a 简写的星期几名称(Sun-Sat)
%A 完整的星期几名称(Sunday-Saturday)
%b 简写的月份名称(Jan-Dec)
%B 完整的月份名称(January-December)
%c 日期和时间的字符串表示(如03/09/18)
%p AM或PM
%z UTC偏移量,格式+HHMM或-HHMM
%Z 时区名称(如UTC、CST)
%% %字符本身

下面是一个将datetime对象格式化为字符串的示例:

import datetime

dt = datetime.datetime(2022, 1, 1, 12, 30)
str = dt.strftime('%Y-%m-%d %H:%M:%S')

print(str)    # 输出结果为:2022-01-01 12:30:00

strptime方法

strptime方法可以将字符串解析为datetime对象。它需要两个参数:一个是要解析的字符串,另一个是格式字符串。格式字符串的各个占位符必须与要解析的字符串中的日期和时间部分对应。下面是一个将字符串解析为datetime对象的示例:

import datetime

str = '20220101123000'
dt = datetime.datetime.strptime(str, '%Y%m%d%H%M%S')

print(dt)    # 输出结果为:2022-01-01 12:30:00

在示例中,strptime() 方法的第二个参数描述输入字符串的格式,%Y代表年份,%m代表月份,%d代表天,以此类推。

这个方法通常用于从文件中读取日期,将字符串转换为日期。为了确定具体的格式字符串,请参阅strftime()的文档来获取更多信息。

示例1

计算一个人出生到现在的天数。

import datetime

birthday = datetime.datetime(1997, 4, 1)
today = datetime.datetime.now()
delta = today - birthday

print(delta.days)

示例2

将UNIX时间戳转换为datetime对象。

import datetime

timestamp = 1643527979
dt = datetime.datetime.fromtimestamp(timestamp)

print(dt.strftime('%Y-%m-%d %H:%M:%S'))

以上代码使用fromtimestamp函数从一个UNIX时间戳创建一个datetime对象,然后使用strftime函数将该对象格式化为字符串。输出结果为2022-01-30 01:46:19

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:浅谈Python中用datetime包进行对时间的一些操作 - Python技术站

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

相关文章

  • Python实现简易过滤删除数字的方法小结

    下面是详细的攻略: Python实现简易过滤删除数字的方法小结 在Python中,我们可以使用多种方法来过滤或删除字符串中的数字。本文将介绍两种常用的方法,分别是使用正则表达式和使用列表推导式。 方法一:使用正则表达式过滤删除数字 在Python中,我们可以使用正则表达式来过滤或删除字符串中的数字。下面是使用正则表达式过滤删除数字的示例代码: import …

    python 2023年5月14日
    00
  • 使用Numpy对特征中的异常值进行替换及条件替换方式

    使用 Numpy 库对特征中的异常值进行替换及条件替换方式的操作在数据处理中非常常见。下面是一些基本的攻略: 对特征中的异常值进行替换 假设我们有一个包含 100 个元素的 Numpy 数组,并且其中有一些异常值。您可以使用Numpy的函数 np.where 来找出数组中所有的异常值,并将其替换为我们想要的值。下面是一个示例代码: import numpy …

    python 2023年5月13日
    00
  • python制作爬虫并将抓取结果保存到excel中

    下面是详细讲解“Python 制作爬虫并将抓取结果保存到 Excel 中”的完整实例教程。 一、准备工作 为了写这个示例,我们需要安装一些 Python 的库: requests:用于请求网页的库 BeautifulSoup:用于解析网页 HTML 的库 pandas:用于操作 Excel 文件的库 可以使用 pip 安装这些库: pip install r…

    python 2023年5月14日
    00
  • python列表的切片与复制示例分析

    下面是关于“python列表的切片与复制示例分析”的完整攻略。 列表的切片 在Python列表中,切片(Slice)是指通过提供起始索引和终止索引来选取一部分元素的过程。切片操作通过:符号来完成。以下是一个示例: my_list = [1, 2, 3, 4, 5, 6] a = my_list[1:4] print(a) 在上面的代码中,我们定义了一个包含6…

    python 2023年6月7日
    00
  • Python自动化办公之生成PDF报告详解

    Python自动化办公之生成PDF报告详解 简介 本攻略将详细介绍如何使用Python语言自动化生成PDF报告。我们将使用Python中的reportlab库,Pillow库,以及Pandas库,通过数据处理和图表可视化来生成具有分析性质的PDF报告。 准备工作 在使用reportlab库来生成PDF文件之前,需要进行以下准备工作: 1.安装reportla…

    python 2023年6月5日
    00
  • python操作redis方法总结

    Python 操作 Redis 方法总结 Redis 简介 Redis 是一个开源的、高性能的 key-value 数据库,支持多种数据结构,包括字符串、哈希、列表、集合、有序集合等。Redis 的特点是数据存放在内存中,读写速度非常快,同时支持持久化。 Redis 的 Python 客户端非常丰富,包括 Redis-py、Redis-py-cluster、…

    python 2023年5月14日
    00
  • Python中字典的缓存池

    Python中字典的缓存池 什么是缓存池? 在Python语言中,为了节省内存和提升性能,会使用缓存池技术。缓存池是一种将常用的对象进行缓存保存的机制,这样可以减少对象的创建和销毁,提升性能和节省内存。 Python中的字典 在Python中,字典(dict)是一种非常常见的数据类型,它是一种键值对映射的集合。 当我们创建一个字典时,Python解释器会在内…

    python 2023年5月13日
    00
  • calendar在python3时间中常用函数举例详解

    当我们在Python中处理日期和时间数据时,经常涉及到日历。Python标准库中内置的日历模块calendar可以帮助我们处理日历相关的操作,比如生成一个月份的日历、计算某个日期是星期几等。 本文将详细讲解calendar模块中的常用函数,并提供两个实例说明。 生成指定年月的月历 使用calendar.monthcalendar(year, month)可以…

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