查看原文
其他

Python时间模块四大必备知识点

Lea 大数据应用 2022-10-18

今日份知识你摄入了么?

时间是数据科学相关任务的一个重要方面。比如,日常的销售情况和库存信息,对于零售分析至关重要。而算法交易的数据,更是需要精确到分钟。

我们呈现、使用时间相关信息的方式,取决于任务本身。对于科学实验,我们可能会精确到微秒级记录的测量数据。但对于人口、家庭平均收入等人口统计信息,我们不需要如此精确。



Python的datetime模块可以帮助我们处理任何精度的时间相关的信息。在本文中,我们将详细介绍该模块中的4个对象,即date、time、datetime和timedelta。


# Date #


Date表示了以年、月和日为单位的日期。让我们通过几个例子来展示该如何使用它们。

我们可以通过传递年、月、日这些信息,来创建存储日期的date对象。



我们还可以根据今天的日期创建一个日期对象。



可以从日期对象中提取各个属性。



请务必注意,我们不能在月和日的前面使用0。比如,以下第一行代码就会返回一个语法错误。



另一个date上很有用的方法是ctime,它能以更详细或扩展的格式来返回日期信息。



我们还可以用减号来计算两个日期的差值。



返回的对象是timedelta类型,我们稍后也将在本文中介绍这个类型。差额是以天为单位计算的。


# Time #


Time对象表示以小时、分、秒和微秒为单位的时间。



在上面这几行代码中,我们只定义了小时和分钟的部分。Python会把其余时间属性默认为0。



我们还可以通过传递所有属性来创建更精确的时间。



# Datetime #


Datetime是date和time的组合。它可以表示来自日期和时间对象的所有属性。为了更方便理解,我们可以来看一些例子。



datetime在日期、或日期和时间结合的使用上有较强的灵活性。


从年份到微秒级别的参数之间,存在着层次结构。


today 函数也可以与 datetime 对象一起使用。



如果打印datetime对象,则会输出更结构化的结果。


就像date和time对象一样,你可以提取datetime对象的单个属性。



我们还可以计算两个datetime对象之间的差异。



# Timedelta #


Timedelta对象表示一段持续时间,所以,我们可以用它们来计算两个日期或时间之间的差值。


下面是一个表示持续时间为6天的timedelta对象。



我们可以以周、天、小时、分、秒和微秒为单位创建timedelta对象。以天和小时-分钟-秒的组合形式输出。



还可以将不同的单位组合起来创建timedelta对象。



我们已经列举了如何计算两个date或datetime对象之间的差异。timedelta对象的另一个常见用法是可以进行更改。


比如,我们可以可以添加特定持续时间到日期中,来计算未来日期。



我们还可以使用timedelta对象更改datetime对象。



# 总结 #


Python 的 Datetime 模块提供了许多不同的方法来操作日期和时间。在处理日期时非常方便。


我们介绍了datetime模块的4种主要对象类型。分别是date、time、datetime和timedelta。datetime对象是日期和时间对象的组合。它可以存储从年到微秒的信息。


当然,datetime 模块还提供了一些其他对象类型,比如timezonestrftime strptime


谢谢你的阅读。如有任何见解,请在下方留言。

原文作者:Soner Yıldırım

翻译作者:Lea

美工编辑:过儿

校对审稿:Jiawei Tong

原文链接:https://towardsdatascience.com/4-must-know-objects-in-python-datetime-module-d18565fddd05


往期精彩回顾


使用Amazon SageMaker和AWS Lambda进行无服务器管道自动化模型训练和部署

Amazon Sagemaker是什么,怎么用?

快速发展的公司最想招聘的两类软件工程师

如何在Jupyter Notebook里运行SQL?

2021北美数据分析岗位求职:我是如何成功快速拿到Data类Offer的?





点「在看」的人都变好看了哦

点击“阅读原文”查看数据应用学院核心课

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存