目录
常见日期格式示例
常用格式代码速查
处理多种格式(自动推断)
小技巧:提取日期部分
首页 后端开发 Python教程 Python Parse Date String示例

Python Parse Date String示例

Jul 30, 2025 am 03:32 AM
java 编程

使用datetime.strptime()可将日期字符串转换为datetime对象,1. 基本用法:通过"%Y-%m-%d"解析"2023-10-05"为datetime对象;2. 支持多种格式如"%m/%d/%Y"解析美式日期、"%d/%m/%Y"解析英式日期、"%b %d, %Y %I:%M %p"解析带AM/PM的时间;3. 可用dateutil.parser.parse()自动推断未知格式;4. 使用.date()方法提取纯日期部分;关键是要确保格式字符串与输入严格匹配,否则会抛出ValueError。

python parse date string example

解析日期字符串是 Python 中常见的操作,datetime 模块的 strptime() 方法是最常用的方式。下面是一个实用的例子,展示如何将常见格式的日期字符串转换为 datetime 对象。

python parse date string example

基本用法:使用 datetime.strptime()

from datetime import datetime

date_string = "2023-10-05"
date_object = datetime.strptime(date_string, "%Y-%m-%d")
print(date_object)  # 输出: 2023-10-05 00:00:00

这里 %Y-%m-%d 是格式化字符串:

  • %Y:4 位年份(如 2023)
  • %m:2 位月份(01-12)
  • %d:2 位日期(01-31)

常见日期格式示例

你可以根据不同的字符串格式调整格式化代码:

python parse date string example
from datetime import datetime

# 示例 1: 带时间的 ISO 格式
dt1 = datetime.strptime("2023-10-05 14:30:00", "%Y-%m-%d %H:%M:%S")

# 示例 2: 美式日期格式
dt2 = datetime.strptime("10/05/2023", "%m/%d/%Y")

# 示例 3: 英式日期格式
dt3 = datetime.strptime("05/10/2023", "%d/%m/%Y")

# 示例 4: 带 AM/PM 的时间
dt4 = datetime.strptime("Oct 5, 2023 2:30 PM", "%b %d, %Y %I:%M %p")

print(dt1)  # 2023-10-05 14:30:00
print(dt2)  # 2023-10-05 00:00:00
print(dt3)  # 2023-10-05 00:00:00
print(dt4)  # 2023-10-05 14:30:00

常用格式代码速查

  • %Y:四位年份(2023)
  • %y:两位年份(23)
  • %m:月份(01-12)
  • %B:完整月份名(October)
  • %b:缩写月份名(Oct)
  • %d:日期(01-31)
  • %H:小时(00-23,24小时制)
  • %I:小时(01-12,12小时制)
  • %M:分钟(00-59)
  • %S:秒(00-59)
  • %p:AM 或 PM

处理多种格式(自动推断)

如果你不确定字符串格式,可以使用第三方库 dateutil

from dateutil import parser

dt = parser.parse("5 October 2023")
print(dt)  # 2023-10-05 00:00:00

dt2 = parser.parse("2023/10/05")
print(dt2)  # 2023-10-05 00:00:00

需要先安装:pip install python-dateutil

python parse date string example

小技巧:提取日期部分

如果你只需要 date 类型(不要时间):

date_only = datetime.strptime("2023-10-05", "%Y-%m-%d").date()
print(date_only)  # 2023-10-05,类型是 datetime.date

基本上就这些常见用法。关键是记住格式字符串要和输入字符串严格匹配,否则会抛出 ValueError

以上是Python Parse Date String示例的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Stock Market GPT

Stock Market GPT

人工智能驱动投资研究,做出更明智的决策

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

解决可选的常见Java NullPoInterException问题 解决可选的常见Java NullPoInterException问题 Aug 31, 2025 am 07:11 AM

Optional是Java8引入的容器类,用于明确表示一个值可能为空,从而避免NullPointerException;2.它通过提供map、orElse等方法简化嵌套null检查、防止方法返回null以及规范集合返回值;3.最佳实践包括仅用于返回值、避免字段或参数使用、区分orElse与orElseGet、不直接调用get();4.不应滥用Optional,如非空方法无需包装,流中应避免不必要的Optional操作;正确使用Optional能显着提升代码安全性与可读性,但需配合良好的编程习惯。

编辑Chrome的书签 编辑Chrome的书签 Aug 27, 2025 am 12:03 AM

Chrome书签编辑简单且实用,用户可通过快捷键Ctrl Shift O(Windows)或Cmd Shift O(Mac)进入书签管理器,也可通过浏览器菜单进入;1.编辑单个书签时,右键点击选择“编辑”,修改标题或网址后点击“完成”保存;2.批量整理书签时,可在书签管理器中按住Ctrl(或Cmd)多选书签,右键选择“移至”或“复制到”目标文件夹;3.导出和导入书签时,点击“整理”按钮选择“导出书签”保存为HTML文件,需要时再通过“导入书签”功能恢复。

输入键无法在我的键盘上工作 输入键无法在我的键盘上工作 Aug 30, 2025 am 08:36 AM

首先,checkforphysicalissueslikedebrisordamageandcleanthekeyboardestestesternone; 2.TestTheEnterKeyIndi​​fferentAppStoDeTermineIftheissueSueIssoftware; 3.RestyourComputerComputerComputerComputerComputorToreSolvetEmporaryGlitches; 4.disablestickykeys; 4.disablestickykeys,calter filtergleglekeys,ortogglek

Java中的内存泄漏是什么? Java中的内存泄漏是什么? Aug 28, 2025 am 05:37 AM

AmemoryleakinJavaoccurswhenunreachableobjectsarenotgarbagecollectedduetolingeringreferences,leadingtoexcessivememoryusageandpotentialOutOfMemoryError.Commoncausesincludestaticcollectionsretainingobjectsindefinitely,unclosedresourceslikestreamsorconne

什么是包装类课程,为什么在Java中使用它们? 什么是包装类课程,为什么在Java中使用它们? Sep 01, 2025 am 05:58 AM

Wrapperclassesareusedtoconvertprimitivedatatypesintoobjects,enablingtheiruseincollections,allowingnullvalues,providingutilitymethods,andsupportingautoboxing/unboxing.1.TheyallowprimitivestobeusedincollectionslikeArrayList,whichonlyacceptobjects.2.The

如何在Java中的流中找到最大或最小值 如何在Java中的流中找到最大或最小值 Aug 27, 2025 am 04:14 AM

使用max()和min()方法结合Comparator可找到流中的最大值和最小值,例如通过Comparator.naturalOrder()或Integer::compareTo比较基本类型;2.对于自定义对象,使用Comparator.comparing()基于特定字段比较,如Person::getAge;3.由于结果是Optional,必须处理空流情况,可使用isPresent()检查或orElse()提供默认值,推荐对基本类型使用IntStream等以避免装箱开销并提升性能,最终应始终妥善

CVE-2024-20674|Windows Kerberos安全功能绕过漏洞 CVE-2024-20674|Windows Kerberos安全功能绕过漏洞 Sep 02, 2025 pm 05:18 PM

0x00前言Kerberos由麻省理工学院创建,作为解决这些网络安全问题的解决方案。是一种通过网络提供安全验证处理的客户机/服务器体系结构。通过验证,可保证网络事务的发送者和接收者的身份真实。该服务还可以检验来回传递的数据的有效性(完整性),并在传输过程中对数据进行加密(保密性)。0x01漏洞描述拥有受害网络访问权限的攻击者可以通过建立中间(MITM)攻击或其他本地网络欺骗技术来利用此漏洞,然后向客户端受害者电脑发送恶意Kerberos消息,并假冒是Kerberos身份验证服务器。0x02CVE

如何使用DemalFormat在Java中格式化数字 如何使用DemalFormat在Java中格式化数字 Aug 30, 2025 am 03:09 AM

使用DecimalFormat可以精确控制数字格式。1.使用模式字符串如"#,###.##"进行基本格式化,其中#表示可选数字,0表示必显数字,,为千位分隔符,.为小数点;2.常见模式包括"0.00"保留两位小数、"0,000.000"补零对齐等;3.避免科学计数法可通过设置setScientificNotation(false)或使用足够位数的模式;4.可通过setRoundingMode()设置舍入模式,如HALF_UP、DOWN等

See all articles