Python 中的 time 模块

Rana Hasnain Khan 2024年2月15日
Python 中的 time 模块

我们将通过示例介绍 Python time 模块及其在 Python 中的功能。我们还将通过示例介绍 Python 中与时间相关的不同方法。

Python time 模块

Python 的 time 模块提供了一个库,用于以各种方式读取、表示和重置时间数据。在 Python 中,日期、时间和日期时间都是对象,因此我们在操作对象时操作对象而不是字符串或时间戳。

我们将在本教程中讨论 time 模块,它允许我们实时处理大量任务。time 模块属于 EPOCH 约定,表示时间的开始。

Unix 系统 EPOCH 的时间从 1970 年 1 月 1 日凌晨 12:00 开始,到 2038 年 12 月 31 日结束。

键入以下代码以确定你机器上的 EPOCH 时间值。导入时间至关重要;没有它,程序就无法工作,如下所示。

# python
import time

print(time.gmtime(0))

输出:

python 中的时间函数第一个例子

如你所见,它显示了 EPOCH 开始的时间。

现在,让我们讨论一下 Python 中的 tick 是什么。

Python 中的 tick

tick 是以秒为单位的浮点值,表示时间间隔。我们有夏令时 (DST),当时钟在夏季提前一小时并在秋季返回时。

Python 中的时间函数模块有许多我们在编程活动中使用的时间函数。在不同的 Python 平台上工作时,会出现不同的场景,需要使用特定的时间函数。

现在,让我们讨论一下我们的 time 模块提供的一些函数以及易于使用的示例,这些示例将帮助我们了解这些函数在我们的 python 应用程序中的用法和优势。

Python 中的 time.time() 函数

time 模块的核心函数是 time()。作为浮点值,它计算自纪元 (1970) 以来的秒数。

语法:

# python
import time

print("Seconds passed since the epoch are : ", time.time())

输出:

获取自纪元以来秒数的 python 示例中的时间函数

从上面的例子可以看出,它返回了从 1970 年开始的总秒数。

现在,让我们想象一下,如果我们想找出完成一个特定过程所花费的秒数。

time 函数还用于查找两点之间的时间(以秒为单位)。因此,让我们看一个示例,在该示例中,我们将使用 time.sleep() 函数以秒为单位添加等待时间,如下所示。

# python
import time

Start = time.time()

print("Time is consuming in working process...")

time.sleep(6)

End = time.time()

print("Time consumed in working process: ", End - Start)

输出:

python 中的时间函数视频示例

正如你从上面的示例中看到的,我们可以使用开始和结束时间轻松获取任何进程所消耗的时间。现在,让我们详细讨论另一个函数 time.ctime()

Python 中的 time.ctime() 函数

time.time() 方法接受自纪元以来的秒数的输入,并根据当前时间将其转换为人类可读的字符串。如果没有提供参数,它会提供当前时间。

当我们需要在给定时间之后找到时间时,该程序将指导我们如何做到这一点。该软件会在设定的时间过去后告诉你时间。

# python
import time

print("The present time is :", time.ctime())

Updated = time.time() + 120

print("After 60 secs from present time :", time.ctime(Updated))

输出:

python 中的 ctime 函数第一个例子

从上面的例子可以看出,我们可以通过给 ctime() 提供我们想要的时间的秒数来快速获取未来时间。

我们现在将讨论另一个有用的函数,time.sleep()

Python 中的 time.sleep() 函数

time.sleep() 函数将当前线程的执行暂停几秒钟。要获得更准确的睡眠时间,请使用浮点数作为输入。

当我们等待文件完成或数据发布时,可以应用 sleep() 函数。

现在,让我们来看一个例子,其中 ctime() 函数用于显示当前时间,然后 sleep() 函数用于暂停特定时间的执行。

# python
import time

print(" Execution Time is :", end="")

print(time.ctime())

print("Waiting time is 6 sec.")

time.sleep(6)

print(" Exicution Time ends at : ", end="")

print(time.ctime())

输出:

python 中的 time.sleep 函数视频示例

从上面的例子可以看出,使用 time.sleep() 函数,我们可以让进程等待任意多的秒数。如上结果所示,等待结束后该函数将正常工作。

现在我们将详细讨论 time 模块中的类 time.struct_time

Python 中的 time.struct_time

单一数据结构是 time 模块中的 time.struct_time。它具有命名元组结构,可以通过索引或属性值获得。

  1. 当你需要访问特定日期时,该类很有用。
  2. Localtime()gmtime() 和返回 struct_time 对象是该类提供的功能之一

让我们通过一个例子来检查我们如何在我们的应用程序中使用它。

# python
import time

print("Present local time:", time.ctime())

time = time.localtime()

print("Days according to monthly:", time.tm_mday)

print("Days according to week :", time.tm_wday)

print("Days according to year :", time.tm_yday)

输出:

python 中的 struct_time 类

从上面的例子可以看出,我们可以通过不同的方法,快速的得到月、周、年的天数。现在,我们将讨论 Python 中的 time 模块提供的另一个有用的函数 time.strftime()

Python 中的 time.strftime() 函数

此方法的第二个参数是元组或结构时间,它使用第一个参数提供的格式转换为字符串。

# python
import time

PRESENT = time.localtime(time.time())

print("Current date time is: ", time.asctime(PRESENT))

print(time.strftime("%y/%m/%d %H:%M", PRESENT))

print(time.strftime("%a %b %d", PRESENT))

print(time.strftime("%c", PRESENT))

print(time.strftime("%I %p", PRESENT))

print(time.strftime("%Y-%m-%d %H:%M:%S %Z", PRESENT))

输出:

python 中的 strftime 函数第一个例子

从上面的例子可以看出,我们可以使用这个函数得到不同的时间格式。在本教程中,我们讨论了 time 模块中的许多有价值的功能。

Rana Hasnain Khan avatar Rana Hasnain Khan avatar

Rana is a computer science graduate passionate about helping people to build and diagnose scalable web application problems and problems developers face across the full-stack.

LinkedIn

相关文章 - Python Time