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

yizhihongxing

浅谈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使用HTMLTestRunner导出饼图分析报告的方法

    Python使用HTMLTestRunner导出饼图分析报告的方法 在本文中,我们将介绍如何使用Python使用HTMLTestRunner库导出饼图分析报告。我们将使用unittest库编写测试用例,使用HTMLTestRunner库生成测试报告,并使用matplotlib库生成饼图。以下是详细的步骤和示例。 步骤1:安装必要的库 在使用Python使用H…

    python 2023年5月15日
    00
  • python下os模块强大的重命名方法renames详解

    Python下os模块强大的重命名方法renames详解 在Python的os模块中,有一个强大的重命名方法renames,本文将详细讲解该方法的使用。 什么是renames方法 renames方法是os模块中的一个方法,用于递归地重命名路径名,将给定的路径名重命名为新的路径名。重命名可跨越文件系统,也就是说可以将一个路径名从一个磁盘上的文件夹移动到另一个磁…

    python 2023年6月2日
    00
  • python3爬虫获取html内容及各属性值的方法

    Python3爬虫获取HTML内容及各属性值的方法 1. 引言 在Python爬虫开发中,获取HTML内容及各属性值是必不可少的操作。本文将介绍Python爬虫获取HTML内容及各属性值的方法。 2. 爬虫获取HTML内容 爬虫获取HTML内容可以使用urllib和requests等第三方库实现。下面以requests为例,介绍获取HTML内容的方法。 首先…

    python 2023年5月14日
    00
  • python如何每天在指定时间段运行程序及关闭程序

    针对你的问题,我可以为你提供以下几种方案: 方案一:使用crontab定时任务 编写Python程序,该程序包含需要在指定时间段运行的任务; 打开终端,输入命令crontab -e打开定时任务编辑; 在最后一行添加定时任务,格式为:* * * * * python /path/to/your/script.py,其中星号表示每个时间段均执行,如果需要指定特定…

    python 2023年6月2日
    00
  • python3.6.3+opencv3.3.0实现动态人脸捕获

    Python3.6.3 + OpenCV3.3.0 实现动态人脸捕获 准备工作 在开始之前,我们需要准备一些必要的工具和环境:- Python3.6.3- OpenCV3.3.0- 摄像头设备(PC自带或USB摄像头) 安装Python3.6.3和OpenCV3.3.0 如果你还没有安装Python3和OpenCV,可以参考以下步骤: 安装Python3.6…

    python 2023年5月18日
    00
  • Python基础 括号()[]{}的详解

    Python基础括号()[]{}的详解 在Python中,用来表示程序语句执行的范围或参数列表、序列等结构的各种括号有三种类型:小括号()、中括号[]、大括号{}。本文将对它们的用法进行详细说明。 小括号() 小括号是最常用的括号之一,它主要用于以下几个方面: 表示函数的调用,可以向函数传递参数,如print(“Hello, World!”)。 表示元组类型…

    python 2023年5月13日
    00
  • Python 如何给图像分类(图像识别模型构建)

    下面是我的完整回答。 一、简介 图像分类是指在训练样本的基础上,通过构建分类模型实现对新输入图像进行分类的技术。在机器学习领域,图像分类是一类非常重要的应用场景,而Python作为一种非常流行的编程语言,也具备非常优秀的图像处理和机器学习的能力。本文将详细讲解如何使用Python进行图像分类。 二、图像分类的过程 1. 数据准备 在进行图像分类之前,首先需要…

    python 2023年5月19日
    00
  • Python对象转换为json的方法步骤

    将 Python 对象转换为 JSON 的方法步骤如下: 用 json.dumps() 方法将 Python 对象转换成一个字符串,该方法会返回一个字符串对象,格式化的模板可以通过参数进行指定,常用的格式化方法有两种,分别为 indent 和 separators。 indent 参数可以定义缩进大小,使得 JSON 字符串更易读,对于比较大的对象,JSON…

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