【Python】一文了解Time模块、Datatime模块、Calendar模块。

作者主页:爱笑的男孩。的博客_CSDN博客-深度学习,活动,YOLO领域博主爱笑的男孩。擅长深度学习,活动,YOLO,等方面的知识,爱笑的男孩。关注算法,python,计算机视觉,图像处理,深度学习,pytorch,神经网络,opencv领域.https://blog.csdn.net/Code_and516?type=collect个人简介:打工人

持续分享:机器学习、深度学习、python相关内容、日常BUG解决方法及Windows&Linux实践小技巧。

如发现文章有误,麻烦请指出,我会及时去纠正。有其他需要可以私信我或者发我邮箱:zhilong666@foxmail.com 

目录

前言 

详细介绍

time模块

datatime模块

calendar模块 


前言 

        在 Python 的时间处理中,一般可以使用以下三件套来处理时、分、秒、日期、时间戳等时间相关的操作:

  1. time 模块:提供了基于 C 标准库的时间处理函数,包括时间的获取与转换、程序计时等功能。
  2. datetime 模块:提供了对时间日期的各种操作功能,包括时间格式化、时区切换等。
  3. calendar 模块:提供了一些与日历相关的函数,比如获取月份的日历、某年是否为闰年等。

        time模块是Python标准库中最基础、最常用的模块之一。它提供了各种处理时间的方法和函数,如获取当前时间、格式化时间、计算时间差等。time模块大部分函数的底层实现是 C 语言库的时间处理函数。

        datetime模块是对time模块的补充和扩展,它提供了更加丰富和灵活的时间处理功能,支持更多的时间格式和时间操作,并且功能更加强大。datetime模块提供了日期(date)、时间(time)、日期时间(datetime)等类型的操作。它也是基于C语言的时间库实现的。

        calendar模块提供了一些与日历相关的函数和类。它包含可打印的日历类,可以格式化周和月的天数,并将日历信息转换为不同的格式。基本上,calendar模块提供了一种将日期转换为特定格式的工具。它是纯Python的实现。

详细介绍 

time模块

        time模块是Python中处理时间的基础模块。 time模块提供了实现时间相关操作的函数,例如获取当前时间、延迟执行、获取时间戳等等。 time模块的函数可以分为3类:

a. 获取时间相关函数

time():获取当前的时间戳(从Unix纪元开始的秒数),返回一个浮点型数值。

ctime():将时间戳转换为可读的字符串形式,如“Sat Jun 15 16:21:31 2023”。

gmtime():获取当前的时间,并将时间戳转换为UTC时区的时间。

localtime():获取当前的时间,并将时间戳转换为本地时区的时间。

b. 格式化时间相关函数

strftime(format, time):将时间元组(struct_time对象)格式化为字符串,可以指定格式。 strptime(date_string, format):将字符串解析为时间元组,可以指定格式。

c. 延迟执行相关函数

sleep(s):使程序暂停指定的秒数。

例如: 

import time
#获取当前时间
now = time.time()
print(now)

#将时间戳转换为可读字符串
time_str = time.ctime(now)
print(time_str)

#获取UTC时间
utc_time_tuple = time.gmtime(now)
print(utc_time_tuple)

#获取本地时间
local_time_tuple = time.localtime(now)
print(local_time_tuple)

#格式化时间
format_time = time.strftime(“%Y-%m-%d %H:%M:%S”, local_time_tuple)
print(format_time)

#将时间字符串解析为时间元组
time_tuple = time.strptime(format_time, “%Y-%m-%d %H:%M:%S”)
print(time_tuple)

#延迟执行
time.sleep(1)

datatime模块

        datetime模块是Python中处理日期和时间的高级模块。 datetime模块是在time模块的基础上开发的,可以提供更精确和高效的时间处理功能。 datetime模块的主要类有3个:

a. date类

        表示一个具体的日期,有3个属性(year、month、day),可以进行日期的加减运算。

b. time类

        表示一天内的时间,有4个属性(hour、minute、second、microsecond),可以进行时间的加减运算。

c. datetime类

        表示一个具体的日期时间,是date类和time类的结合体,具有date类和time类的所有属性和方法。

datetime模块提供了很多函数和方法:

datetime.now():获取当前日期和时间。

datetime.combine(date, time):将date对象和time对象合并成datetime对象。

datetime.strptime(date_string, format):将字符串解析成datetime对象,可以指定格式。

datetime.strftime(date, format):将datetime对象格式化为字符串,可以指定格式。

datetime.timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0):表示两个日期或时间之间的时间差。

例如:

import datetime

#获取当前时间
current_time = datetime.datetime.now()
print("当前时间:", current_time)

#获取某一天的日期
date = datetime.date(2023, 4, 25)
print("指定日期:", date)

#获取某一时间的时间戳
timestamp = datetime.datetime.timestamp(current_time)
print("当前时间戳:", timestamp)

#获取某一日期的星期几
weekday = date.weekday()
print("星期几:", weekday)

#将字符串转换为日期
string_date = '2023-04-25'
converted_date = datetime.datetime.strptime(string_date, '%Y-%m-%d')
print("转换后的日期:", converted_date)

#将日期转换为字符串
string_date = converted_date.strftime('%Y/%m/%d')
print("转换后的字符串日期:", string_date)

 

calendar模块 

        calendar模块是Python中处理日历相关操作的模块。 calendar模块可以输出各种格式的日历,例如月历、年历等等。calendar模块提供了以下函数:

calendar.calendar(year, w=2, l=1, c=6):返回整个年份的日历文字字符串。

calendar.monthcalendar(year, month):返回一个由月内日期构成的二位数组(可以用来构建月历)。

calendar.monthrange(year, month):返回指定月份的第一天和这一天在一周中的相对位置(例如,星期一为0,星期二为1,以此类推,星期天为6)

calendar.weekday(year, month, day):返回指定日期的星期数(0代表星期一,1代表星期二,以此类推)。

例如:

import calendar
#输出年历
print(calendar.calendar(2021))

#输出9月份日历
print(calendar.monthcalendar(2021, 9))

#输出指定月的第一天和这一天在一周中的相对位置
print(calendar.monthrange(2021, 9))

#输出指定日期的星期数
print(calendar.weekday(2021, 9, 9))

 

 

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱笑的男孩。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值