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

利用Python函数处理时间和日期

发布时间:2023-05-26 07:22:29

Python有很多内置的函数和模块可以用来处理时间和日期,包括datetime、time、calendar等。这些函数和模块可以帮助我们在代码中进行时间戳、时间格式转换、日期加减、闰年判断等操作。下面是一些常用的Python时间和日期处理的函数和模块。

datetime模块

datetime模块提供了包括日期、时间和时间戳等常用的时间和日期处理功能。它可以用于获取当前时间、时间戳的转换、时间戳的格式化输出等操作。

1. 获取当前时间

from datetime import datetime

now = datetime.now()

print("当前时间:{}".format(now))

输出结果为:当前时间:2021-09-21 11:35:44.904901

2. 时间戳转换成datetime对象

from datetime import datetime

timestamp = 1630586744

dt_object = datetime.fromtimestamp(timestamp)

print("datetime对象:", dt_object)

输出结果为:datetime对象:2021-09-02 12:45:44

3. datetime对象转换成时间戳

from datetime import datetime

dt_object = datetime(2021, 9, 2, 12, 45, 44)

timestamp = datetime.timestamp(dt_object)

print("时间戳:", timestamp)

输出结果为:时间戳:1630586744.0

4. datetime对象的格式化输出

from datetime import datetime

dt_object = datetime(2021, 9, 2, 12, 45, 44)

print("格式化输出:", dt_object.strftime("%Y-%m-%d %H:%M:%S"))

输出结果为:格式化输出:2021-09-02 12:45:44

time模块

time模块用于处理时间相关的函数,常用于获取当前时间、时间格式转换、睡眠等操作。

1. 获取当前时间戳

import time

timestamp = time.time()

print("当前时间戳:", timestamp)

输出结果为:当前时间戳:1632237586.2164075

2. 时间格式转换

import time

timestamp = 1630586744

t_struct = time.localtime(timestamp)

formatted_time = time.strftime('%Y-%m-%d %H:%M:%S', t_struct)

print("格式化输出:", formatted_time)

输出结果为:格式化输出:2021-09-02 12:45:44

3. 睡眠函数

import time

print("开始睡眠")

time.sleep(5)

print("睡眠结束")

输出结果为:开始睡眠 睡眠结束

calendar模块

calendar模块用于处理日历相关的函数,包括闰年判断、月历输出等操作。

1. 判断年份是否为闰年

import calendar

year = 2022

is_leap = calendar.isleap(year)

if is_leap:

    print(year, "是闰年")

else:

    print(year, "不是闰年")

输出结果为:2022 不是闰年

2. 输出月历

import calendar

year = 2021

month = 9

cal = calendar.month(year, month)

print("2021年9月月历:")

print(cal)

输出结果为:

    2021年9月月历:

       September 2021

    Mo Tu We Th Fr Sa Su

          1  2  3  4  5

     6  7  8  9 10 11 12

    13 14 15 16 17 18 19

    20 21 22 23 24 25 26

    27 28 29 30

总结

Python提供了丰富的时间和日期处理函数和模块,使用数据类型也很方便。以上就是常用的几个模块和函数,可以满足日常开发中的时间和日期处理需求。需要根据具体需求灵活使用。