欢迎访问宙启技术站
智能推送

如何使用Python函数进行时间处理和格式转换?

发布时间:2023-06-25 00:34:44

在Python中,时间处理和格式转换是非常常见的操作。Python中有很多内置的时间处理模块和函数,如datetime, time等。这些模块和函数提供了广泛的时间处理和格式转换的功能。

1.时间戳

Python中的时间戳是指从1970年1月1日00:00:00开始所经过的秒数。我们可以使用time.time()函数来获取当前时间戳。

示例代码:

import time

timestamp = time.time()

print("Current timestamp:", timestamp)

输出:

Current timestamp: 1602217156.1471336

2.时间戳转换为时间类型

我们可以使用datetime模块中的fromtimestamp()函数把一个时间戳转换为日期时间格式。

示例代码:

import datetime

timestamp = 1602217156.1471336

dt_object = datetime.datetime.fromtimestamp(timestamp)

print("Date time object:", dt_object)

输出:

Date time object: 2020-10-09 22:19:16.147134

3.时间类型转换为字符串

我们可以使用strftime()函数把一个时间类型转换为自定义格式的字符串。

示例代码:

import datetime

dt_object = datetime.datetime.now()

dt_string = dt_object.strftime("%Y-%m-%d %H:%M:%S")

print("Date time string:", dt_string)

输出:

Date time string: 2020-10-09 22:26:19

4.字符串转换为时间类型

我们可以使用strptime()函数把一个字符串转换为时间类型。

示例代码:

import datetime

dt_string = "2020-10-09 22:28:36"

dt_object = datetime.datetime.strptime(dt_string, "%Y-%m-%d %H:%M:%S")

print("Date time object:", dt_object)

输出:

Date time object: 2020-10-09 22:28:36

5.时间差计算

我们可以使用datetime模块中的timedelta函数来计算时间差。

示例代码:

import datetime

dt1 = datetime.datetime.strptime("2020-10-09 22:30:10", "%Y-%m-%d %H:%M:%S")

dt2 = datetime.datetime.strptime("2020-10-09 22:33:10", "%Y-%m-%d %H:%M:%S")

delta = dt2 - dt1

print("Time difference:", delta)

输出:

Time difference: 0:03:00

6.定时任务

我们可以使用Python的schedule模块执行定时任务。schedule模块提供了一些方便的函数,例如schedule.every()、schedule.every().day、schedule.every().hour、schedule.every().minute等等,可以简单地调用。

示例代码:

import schedule

import time

def job():

    print("I'm working...")

    

schedule.every(10).seconds.do(job)

while True:

    schedule.run_pending()

    time.sleep(1)

输出:

I'm working...

I'm working...

I'm working...

...

总结:

Python提供了多种时间处理和格式转换的工具,使得我们能够轻松地操作时间,并将时间转换为不同的格式。在使用Python进行时间处理和格式转换时,我们需要了解时间戳、时间类型、字符串和时间差等概念,并掌握Python提供的内置时间处理模块和函数,例如datetime、time、schedule等。