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

时间和日期的处理函数

发布时间:2023-06-08 09:06:22

时间和日期是程序中常见的类型之一。在Python中,有一些内置的模块和函数可以用来处理时间和日期。

一、time模块

time模块提供了一些处理时间的函数。其中,最常用的函数是time()和sleep()。

1. time()

time()函数返回从1970年1月1日开始计算的秒数。例如,下面的代码显示了当前时间:

import time
print(time.time())

输出结果:

1592924748.090813

2. sleep()

sleep()函数会暂停程序的执行,让程序等待指定的时间。例如,下面的代码暂停程序的执行1秒钟:

import time
print("start")
time.sleep(1)
print("end")

输出结果:

start
end

二、datetime模块

datetime模块提供了一些处理日期和时间的函数。其中,最常用的类是datetime和timedelta。

1. datetime类

datetime类可以用来表示一个日期和时间。 下面的代码显示了当前日期和时间:

import datetime
print(datetime.datetime.now())

输出结果:

2021-08-20 09:32:51.181613

2. timedelta类

timedelta类可以用来表示两个日期和时间之间的时间差。例如,下面的代码计算了两个日期之间的时间差:

import datetime
date1 = datetime.datetime(2021, 1, 1)
date2 = datetime.datetime.now()
delta = date2 - date1
print(delta)

输出结果:

231 days, 9:33:14.856996

三、strftime()函数和strptime()函数

strftime()函数可以将一个datetime对象格式化为一个字符串。strptime()函数可以将一个字符串解析成一个datetime对象。

1. strftime()函数

strftime()函数可以将一个datetime对象格式化为一个字符串。其中,strftime()函数的第一个参数是格式化字符串。例如,下面的代码将当前时间格式化为"年-月-日 时:分:秒"的格式:

import datetime
now = datetime.datetime.now()
print(now.strftime('%Y-%m-%d %H:%M:%S'))

输出结果:

2021-08-20 09:39:06

2. strptime()函数

strptime()函数可以将一个字符串解析成一个datetime对象。其中,strptime()函数的第一个参数是字符串,第二个参数是格式化字符串。例如,下面的代码将一个字符串解析成一个datetime对象:

import datetime
date_str = '2021-08-20 09:39:06'
date_obj = datetime.datetime.strptime(date_str, '%Y-%m-%d %H:%M:%S')
print(date_obj)

输出结果:

2021-08-20 09:39:06

四、timeit模块

timeit模块提供了一种可以测量代码执行时间的方法。其中,最常用的函数是timeit()。

1. timeit()函数

timeit()函数可以用来测量代码的执行时间。其中,timeit()函数的第一个参数是要执行的代码,第二个参数是循环的次数。例如,下面的代码测量了一个简单的排序算法的执行时间:

import timeit
code = """
def bubble_sort(arr):
    n = len(arr)
    for i in range(n):
        for j in range(0, n-i-1):
            if arr[j] > arr[j+1]:
                arr[j], arr[j+1] = arr[j+1], arr[j]
arr = [5, 2, 6, 7, 2, 1, 0, 3]
bubble_sort(arr)
"""
print(timeit.timeit(code, number=1000))

输出结果:

0.013664347000002665

总结:

时间和日期在日常软件开发中非常常见,上述提及的这几个库和函数都是处理时间和日期的常用方法。希望能对你有所帮助。