Python py strptime:将字符串转换为日期时间

一、概述:strptime和strftime函数

Python中的strptime函数和strftime函数具有极大的相似性,都是用来进行格式化输出和时间字符串转换。strptime是用来将时间字符串解析成时间格式的函数,而strftime则是用来将时间格式格式化为时间字符串的函数。strptime和strftime函数都依赖于格式化指令。

strptime 函数接收两个参数:一个是字符串形式的日期时间,另一个是日期时间的格式。

strftime函数接收两个参数:一个是日期时间的格式,另一个是时间元组。

二、strptime函数详解

strptime函数可以将时间格式的字符串解析成时间元组。时间元组是由以下9个元素组成的:

struct_time(tm_year=2021, tm_mon=1, tm_mday=1, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=4, tm_yday=1, tm_isdst=-1)

其中,tm_year代表年份,从1900开始,所以如果要表示2021年,则tm_year的值为121。tm_mon代表月份,从1开始,范围为1~12。tm_mday代表日期,从1开始,范围为1~31。tm_hour代表小时,从0开始,范围为0~23。tm_min代表分钟,从0开始,范围为0~59。tm_sec代表秒数,从0开始,范围为0~61(60和61是闰秒)。tm_wday代表星期几,从0开始,范围为0~6,0为星期一,6为星期日。tm_yday代表一年中的第几天,从1开始,范围为1~366。tm_isdst代表是否为夏令时,-1代表不确定,0代表不是,1代表是。

下面是一个示例代码:

from datetime import datetime
date_time_str = '2022-05-08 10:00:00'
date_time_obj = datetime.strptime(date_time_str, '%Y-%m-%d %H:%M:%S')
print('日期时间对象:', date_time_obj)

以上代码的输出结果为:

日期时间对象:2022-05-08 10:00:00

strptime中常用的格式化指令如下:

格式化指令 说明
%a 星期几的本地简写
%A 星期几的本地完整名称
%b 月份的本地简写
%B 月份的本地完整名称
%c 本地日期和时间表示
%d 一个月中的日期(01~31)
%H 24小时制的小时数(00~23)
%I 12小时制的小时数(01~12)
%j 一年中的第几天(001~366)
%m 月份(01~12)
%M 分钟数(00~59)
%p AM或PM
%S 秒数(00~61)
%U 一年中的星期数(00~53),星期天是一个星期的起始
%w 一个星期中的第几天(0~6,0为星期天)
%W 一年中的星期数(00~53),星期一是一个星期的起始
%x 本地相应的日期表示
%X 本地相应的时间表示
%y 年份的最后两位数(00~99)
%Y 年份的完整表示,4位数
%z 与UTC偏移的整小时数(+HHMM或-HHMM)
%Z 时区的名称(为空白字符,或者美国标准缩写)
%% 百分号

三、strftime函数详解

strftime函数可以将时间元组格式化为时间字符串。下面是一个示例代码:

from datetime import datetime
now = datetime.now()
time_string = now.strftime("%Y-%m-%d %H:%M:%S")
print(time_string)

以上代码的输出结果为:

2022-05-08 18:30:00

常用的格式化指令与strptime函数中一致,此处不再赘述。

四、应用场景

strptime函数和strftime函数是处理时间的重要方法,应用场景非常广泛。比如,在实际开发中,用户输入的数据往往是字符串格式的,而程序需要的是时间格式,这时就需要将字符串格式的数据使用strptime函数转换为时间格式;又比如在数据分析过程中,我们需要对时间进行聚合和分组,而时间类型不方便进行直接的操作,这时就需要将时间格式使用strftime函数转换为字符串格式。

五、总结

Python中的strptime和strftime函数是处理时间的常用方法,可以实现字符串与时间格式的相互转换。strptime函数将时间字符串解析成时间元组,而strftime函数将时间元组解析成时间字符串。在实际开发中应用广泛,是程序员处理时间的重要工具。

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/150989.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-11-10 01:11
下一篇 2024-11-10 01:11

相关推荐

  • Python计算阳历日期对应周几

    本文介绍如何通过Python计算任意阳历日期对应周几。 一、获取日期 获取日期可以通过Python内置的模块datetime实现,示例代码如下: from datetime imp…

    编程 2025-04-29
  • Python字符串宽度不限制怎么打代码

    本文将为大家详细介绍Python字符串宽度不限制时如何打代码的几个方面。 一、保持代码风格的统一 在Python字符串宽度不限制的情况下,我们可以写出很长很长的一行代码。但是,为了…

    编程 2025-04-29
  • Python中将字符串转化为浮点数

    本文将介绍在Python中将字符串转化为浮点数的常用方法。在介绍方法之前,我们先来思考一下这个问题应该如何解决。 一、eval函数 在Python中,最简单、最常用的将字符串转化为…

    编程 2025-04-29
  • Java判断字符串是否存在多个

    本文将从以下几个方面详细阐述如何使用Java判断一个字符串中是否存在多个指定字符: 一、字符串遍历 字符串是Java编程中非常重要的一种数据类型。要判断字符串中是否存在多个指定字符…

    编程 2025-04-29
  • Python学习笔记:去除字符串最后一个字符的方法

    本文将从多个方面详细阐述如何通过Python去除字符串最后一个字符,包括使用切片、pop()、删除、替换等方法来实现。 一、字符串切片 在Python中,可以通过字符串切片的方式来…

    编程 2025-04-29
  • 使用FFmpeg在Java中将MP3 URL转换为PCM

    本文介绍了使用FFmpeg在Java中将MP3 URL转换为PCM的具体步骤,以及相应代码示例。 一、准备工作 在使用FFmpeg之前,需要先安装FFmpeg,可以在官网(http…

    编程 2025-04-29
  • 解决docker-compose 容器时间和服务器时间不同步问题

    docker-compose是一种工具,能够让您使用YAML文件来定义和运行多个容器。然而,有时候容器的时间与服务器时间不同步,导致一些不必要的错误和麻烦。以下是解决方法的详细介绍…

    编程 2025-04-29
  • Python获取当前日期的多种方法

    本文介绍如何使用Python获取当前日期,并提供了多种方法,包括使用datetime模块、time模块以及第三方库dateutil等。让我们一步一步来看。 一、使用datetime…

    编程 2025-04-29
  • Python如何将字符串1234变成数字1234

    Python作为一种广泛使用的编程语言,对于数字和字符串的处理提供了很多便捷的方式。如何将字符串“1234”转化成数字“1234”呢?下面将从多个方面详细阐述Python如何将字符…

    编程 2025-04-29
  • Python int转二进制字符串

    本文将从以下几个方面对Python中将int类型转换为二进制字符串进行详细阐述: 一、int类型和二进制字符串的定义 在Python中,int类型表示整数,二进制字符串则是由0和1…

    编程 2025-04-29

发表回复

登录后才能评论