时间和日期的处理函数
时间和日期是程序中常见的类型之一。在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
总结:
时间和日期在日常软件开发中非常常见,上述提及的这几个库和函数都是处理时间和日期的常用方法。希望能对你有所帮助。
