Python时间格式化:strptime的用法

一、时间格式化的基础

在Python中,处理时间的常用库是datetime。datetime库中除了包含日期和时间的基本类型,还提供了一些常用的函数和方法,如strptime和strftime等。strptime函数是Python中用来将字符串转换成时间格式的函数,其用法如下:

datetime.datetime.strptime(date_string, format)

其中,date_string是待转换的字符串,format是date_string的时间格式。datetime.strptime函数会把date_string解析成datetime对象。例如:

import datetime

date_string = '2020-11-11 11:11:11'
date_format = '%Y-%m-%d %H:%M:%S'
date_obj = datetime.datetime.strptime(date_string, date_format)

print(date_obj)

输出结果为:

2020-11-11 11:11:11

上面的代码中,我们传入了待转换的字符串date_string和其时间格式date_format,然后调用datetime.datetime.strptime方法解析出datetime类型的日期时间对象date_obj。

二、时间格式化中的常用格式符

在上面的例子中,我们传入的时间格式字符串的格式与待转换的字符串完全一致。但实际应用中,由于原始数据的差异或者实际需要的时间格式的不同,往往需要进行格式化。下面是一些常用的日期时间格式符:

  • %Y:年份,四位数字
  • %m:月份,带前导零
  • %d:日期,带前导零
  • %H:小时(24小时制),带前导零
  • %M:分钟,带前导零
  • %S:秒数,带前导零

还可以使用其他字符表示时间的不同部分,以%m为例:

  • %-m:不带前导零的月份(即1~12)
  • %^m:大写字母形式的月份缩写
  • %#m:字符形式的月份,可能带有前导零或后导空格

下面是一个使用常用格式符的例子:

import datetime

date_string = '2021-10-01'
date_format = '%Y/%m/%d'
date_obj = datetime.datetime.strptime(date_string, date_format)

print(date_obj)

输出结果为:

2021-10-01 00:00:00

三、自定义时间格式化符

虽然Python提供了很多常用的日期时间格式符,但在某些特殊情况下,可能需要使用自定义的格式化符。下面看一个例子:

import datetime

date_string = '20211231'
date_format = '%Y%m%d'
date_obj = datetime.datetime.strptime(date_string, date_format)

print(date_obj)

输出结果为:

2021-12-31 00:00:00

在上面的例子中,date_string是一个连续的数字字符串,通过运用自定义格式化符,我们成功将其转换成了datetime对象。

四、strptime函数中的映射表

在strptime函数中,时间格式化符对应的映射表如下:

  • %a:周几的英文缩写
  • %A:周几的英文全称
  • %b:月份的英文缩写
  • %B:月份的英文全称
  • %c:日期时间的字符串表示,如’Wed Oct 27 14:21:20 2021′
  • %d:一月中的第几天,带前导零,例如’01’
  • %f:微秒数,范围从0到999999
  • %H:24小时制下的小时数,带前导零,例如’01’~’23’
  • %I:12小时制下的小时数,带前导零,例如’01’~’12’
  • %j:一年中的第几天,不带前导零,例如’1’~’366′
  • %m:月份,带前导零,例如’01’~’12’
  • %M:分钟数,带前导零,例如’00’~’59’
  • %p:AM或PM
  • %S:秒数,带前导零,例如’00’~’59’
  • %U:一年中的第几周,以周日为一周的第一天,从第一个周日开始算,不足两位前面补0,例如’01’~’53’
  • %w:一周中的第几天,从周日开始算,0表示周日,6表示周六
  • %W:一年中的第几周,以周一为一周的第一天,从第一个周一开始算,不足两位前面补0,例如’01’~’53’
  • %x:日期的字符串表示,如’10/27/21′
  • %X:时间的字符串表示,如’14:21:20′
  • %y:两位数的年份表示(00-99)
  • %Y:四位数的年份表示(如2021)
  • %z:以+HHMM或-HHMM表示的UTC时区偏移量,例如+0800表示东八区
  • %Z:时区名称,如CST、CDT、GMT等
  • %%:表示字符“%”

五、结语

strptime函数是Python中对字符串进行格式化时间转换的利器,理解并熟练掌握其用法,可以极大地方便我们对时间的处理。本文从时间格式化的基础、常用格式符、自定义格式化符以及映射表4个方面对strptime函数的用法进行了详细阐述,相信读者已对其有了更深入的了解。

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

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

相关推荐

  • Python列表中负数的个数

    Python列表是一个有序的集合,可以存储多个不同类型的元素。而负数是指小于0的整数。在Python列表中,我们想要找到负数的个数,可以通过以下几个方面进行实现。 一、使用循环遍历…

    编程 2025-04-29
  • Python计算阳历日期对应周几

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

    编程 2025-04-29
  • Python周杰伦代码用法介绍

    本文将从多个方面对Python周杰伦代码进行详细的阐述。 一、代码介绍 from urllib.request import urlopen from bs4 import Bea…

    编程 2025-04-29
  • Python中引入上一级目录中函数

    Python中经常需要调用其他文件夹中的模块或函数,其中一个常见的操作是引入上一级目录中的函数。在此,我们将从多个角度详细解释如何在Python中引入上一级目录的函数。 一、加入环…

    编程 2025-04-29
  • 如何查看Anaconda中Python路径

    对Anaconda中Python路径即conda环境的查看进行详细的阐述。 一、使用命令行查看 1、在Windows系统中,可以使用命令提示符(cmd)或者Anaconda Pro…

    编程 2025-04-29
  • Python字典去重复工具

    使用Python语言编写字典去重复工具,可帮助用户快速去重复。 一、字典去重复工具的需求 在使用Python编写程序时,我们经常需要处理数据文件,其中包含了大量的重复数据。为了方便…

    编程 2025-04-29
  • python强行终止程序快捷键

    本文将从多个方面对python强行终止程序快捷键进行详细阐述,并提供相应代码示例。 一、Ctrl+C快捷键 Ctrl+C快捷键是在终端中经常用来强行终止运行的程序。当你在终端中运行…

    编程 2025-04-29
  • Python清华镜像下载

    Python清华镜像是一个高质量的Python开发资源镜像站,提供了Python及其相关的开发工具、框架和文档的下载服务。本文将从以下几个方面对Python清华镜像下载进行详细的阐…

    编程 2025-04-29
  • 蝴蝶优化算法Python版

    蝴蝶优化算法是一种基于仿生学的优化算法,模仿自然界中的蝴蝶进行搜索。它可以应用于多个领域的优化问题,包括数学优化、工程问题、机器学习等。本文将从多个方面对蝴蝶优化算法Python版…

    编程 2025-04-29
  • Python程序需要编译才能执行

    Python 被广泛应用于数据分析、人工智能、科学计算等领域,它的灵活性和简单易学的性质使得越来越多的人喜欢使用 Python 进行编程。然而,在 Python 中程序执行的方式不…

    编程 2025-04-29

发表回复

登录后才能评论