广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python标准库之日期、时间和日历模块怎么使用
  • 786
分享到

Python标准库之日期、时间和日历模块怎么使用

2023-06-30 17:06:39 786人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

今天小编给大家分享一下python标准库之日期、时间和日历模块怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、ti

今天小编给大家分享一下python标准库之日期、时间和日历模块怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

一、time时间模块

import time

1 、时间戳:time.time()

时间戳(timestamp):时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。

时间戳单位最适于做日期运算。但是1970年之前的日期就无法以此表示了。太遥远的日期也不行,UNIX和windows只支持到2038年。

time_stamp = time.time()print(time_stamp, type(time_stamp))  # 1574923359.1739607 <class 'float'>

2、 格式化时间:time.strftime()

格式化的时间字符串(fORMat string):格式化时间表示的是普通的字符串格式的时间。

format_time = time.strftime("%Y-%m-%d %X")print(format_time, type(format_time)) #2019-03-07 16:22:11 <class 'str'># 格式化成2016-03-20 11:45:39形式print (time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))

Python中时间日期格式化符号:

  • %y 两位数的年份表示(00-99)

  • %Y 四位数的年份表示(000-9999)

  • %m 月份(01-12)

  • %d 月内中的一天(0-31)

  • %H 24小时制小时数(0-23)

  • %I 12小时制小时数(01-12)

  • %M 分钟数(00=59)

  • %S 秒(00-59)

  • %a 本地简化星期名称

  • %A 本地完整星期名称

  • %b 本地简化的月份名称

  • %B 本地完整的月份名称

  • %c 本地相应的日期表示和时间表示

  • %j 年内的一天(001-366)

  • %p 本地A.M.或P.M.的等价符

  • %U 一年中的星期数(00-53)星期天为星期的开始

  • %w 星期(0-6),星期天为星期的开始

  • %W 一年中的星期数(00-53)星期一为星期的开始

  • %x 本地相应的日期表示

  • %X 本地相应的时间表示

  • %Z 当前时区的名称

  • %% %号本身

3 、结构化时间:time.localtime()

结构化的时间(struct time):struct_time元组共有9个元素共九个元素,分别为(年,月,日,时,分,秒,一年中第几周(0是周一),一年中第几天,夏令时)

# UTC时区的struct_time:print(time.gmtime() )  # time.struct_time(tm_year=2019, tm_mon=11, tm_mday=28, tm_hour=6, tm_min=45, tm_sec=34, tm_wday=3, tm_yday=332, tm_isdst=0)# 本地时区的struct_time: print( time.localtime() )  # time.struct_time(tm_year=2019, tm_mon=11, tm_mday=28, tm_hour=14, tm_min=45, tm_sec=34, tm_wday=3, tm_yday=332, tm_isdst=0)#  获取当前时间print( time.localtime(time.time())# 结构化时间的基准时间print(time.localtime(0) )  # time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=8, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=1, tm_isdst=0)# 结构化时间的基准时间上增加一年时间print(time.localtime(3600 * 24 * 365) )  # time.struct_time(tm_year=1971, tm_mon=1, tm_mday=1, tm_hour=8, tm_min=0, tm_sec=0, tm_wday=4, tm_yday=1, tm_isdst=0)

4、 不同格式时间的转换

Python标准库之日期、时间和日历模块怎么使用

如上图所示,我们总能通过某些方法在结构化时间-格式化时间-时间戳三者之间进行转换,下面我们将用代码展示如何通过这些方法转换时间格式。

# 结构化时间now_time = time.localtime()print(now_time)  # time.struct_time(tm_year=2019, tm_mon=11, tm_mday=28, tm_hour=14, tm_min=51, tm_sec=55, tm_wday=3, tm_yday=332, tm_isdst=0)# 把结构化时间转换为时间戳格式print(time.mktime(now_time))  # 1574923915.0# 把结构化时间转换为格式化时间# %Y年-%m月-%d天 %X时分秒=%H时:%M分:%S秒print(time.strftime("%Y-%m-%d %X", now_time) )  # 2019-11-28 14:51:55# 把格式化时间化为结构化时间,它和strftime()是逆操作print(time.strptime('2013-05-20 13:14:52', '%Y-%m-%d %X') )  # time.struct_time(tm_year=2013, tm_mon=5, tm_mday=20, tm_hour=13, tm_min=14, tm_sec=52, tm_wday=0, tm_yday=140, tm_isdst=-1)

5、 其他用法

# 把结构化时间表示为这种形式(24个字符的字符串):'Sun Jun 20 23:21:05 1993'。print(time.asctime() )  # Thu Nov 28 14:51:55 2019# 如果没有参数,默认会将time.localtime()作为参数传入。print(time.asctime(time.localtime()) )  # Thu Nov 28 14:51:55 2019# 把一个时间戳转化为这种形式(24个字符的字符串):'Sun Jun 20 23:21:05 1993'。print(time.ctime() )  # Thu Nov 28 14:51:55 2019# 如果参数未给或者为None的时候,默认会将time.time()为参数。它的作用相当于time.asctime(time.localtime(secs))。print(time.ctime(time.time()))  # Thu Nov 28 14:51:55 2019# 推迟指定的时间运行,单位为秒start = time.time()time.sleep(3)end = time.time()print(end-start) #3.0005428791046143time.perf_counter()  # 返回系统运行时间time.process_time()  # 返回进程运行时间

二、datetime时间加减的模块

datetime模块可以看成是时间加减的模块

import datetime

1、用法:

import datetimeimport time# 返回当前时间print(datetime.datetime.now() )  # 2019-11-28 15:02:23.138960print(datetime.date.fromtimestamp(time.time()) )  # 2019-11-28# 当前时间+3天print(datetime.datetime.now() + datetime.timedelta(3) )  # 2019-12-01 15:02:23.138960# 当前时间-3天print(datetime.datetime.now() + datetime.timedelta(-3))  # 2019-11-25 15:02:23.138960# 当前时间-3小时print(datetime.datetime.now() + datetime.timedelta(hours=3)  )  # 2019-11-28 18:02:23.138960# 当前时间+30分钟print(datetime.datetime.now() + datetime.timedelta(minutes=30) )  # 2019-11-28 15:32:23.138960# 时间替换c_time = datetime.datetime.now()print(c_time.replace(minute=20, hour=5, second=13))  # 2019-11-28 05:20:13.138960

2、常用时间处理方法

  • 今天: today = datetime.date.today()

  • 昨天: yesterday = today - datetime.timedelta(days=1)

  • 上个月: last_month = today.month - 1 if today.month - 1 else 12

  • 当前时间戳: time_stamp = time.time()

  • 时间戳转datetime: datetime.datetime.fromtimestamp(time_stamp)

  • datetime转时间戳: int(time.mktime(today.timetuple()))

  • datetime转字符串: today_str = today.strftime("%Y-%m-%d")

  • 字符串转datetime: today = datetime.datetime.strptime(today_str, "%Y-%m-%d")

  • 补时差: today + datetime.timedelta(hours=8)

三、Calendar日历模块

Calendar模块有很广泛的方法用来处理年历和月历,例如打印某月的月历:

import calendarcal = calendar.month(2016, 1)print ("以下输出2016年1月份的日历:")print (cal)

以上实例输出结果:

以下输出2016年1月份的日历:    January 2016Mo Tu We Th Fr Sa Su             1  2  3 4  5  6  7  8  9 1011 12 13 14 15 16 1718 19 20 21 22 23 2425 26 27 28 29 30 31

星期一是默认的每周第一天,星期天是默认的最后一天。更改设置需调用calendar.setfirstweekday()函数。

农历:

安装方法:

pip install sxtwl

Windows下的二进制安装包:

# 引入日历库模块import sxtwl# 日历中文索引ymc = ["十一", "腊", "正", "二", "三", "四", "五", "六", "七", "八", "九", "十"]rmc = ["初一", "初二", "初三", "初四", "初五", "初六", "初七", "初八", "初九", "初十", "十一", "十二", "十三", "十四", "十五", "十六", "十七", "十八", "十九",       "二十", "廿一", "廿二", "廿三", "廿四", "廿五", "廿六", "廿七", "廿八", "廿九", "三十", "卅一"]# 实例化日历库lunar = sxtwl.Lunar()# 阴历转阳历day = lunar.getDayByLunar(2030, 3, 27, False)  # 公元前的年可以用负数表示。比如公交前20年就用-20print(u"公历:", day.y, u"年", day.m, u"月", day.d, u"日")if day.Lleap:    print(u"阴历:润", ymc[day.Lmc], u"月", rmc[day.Ldi], u"日")else:    print(u"阴历:", ymc[day.Lmc], u"月", rmc[day.Ldi], u"日")# 同理,阳历转阴历day = lunar.getDayBySolar(2018, 10, 20)print(u"公历:", day.y, u"年", day.m, u"月", day.d, u"日")if day.Lleap:    print(u"阴历:润", ymc[day.Lmc], u"月", rmc[day.Ldi], u"日")else:    print(u"阴历:", ymc[day.Lmc], u"月", rmc[day.Ldi], u"日")

以上就是“Python标准库之日期、时间和日历模块怎么使用”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网Python频道。

--结束END--

本文标题: Python标准库之日期、时间和日历模块怎么使用

本文链接: https://www.lsjlt.com/news/330388.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python标准库之日期、时间和日历模块
    一、time时间模块 import time 1 、时间戳:time.time() 时间戳(timestamp):时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移...
    99+
    2022-11-11
  • Python标准库之日期、时间和日历模块怎么使用
    今天小编给大家分享一下Python标准库之日期、时间和日历模块怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、ti...
    99+
    2023-06-30
  • Python常用标准库及第三方库3-日期、时间处理模块
    时间处理是编程中一个比较常见的情况,比如转换时间类型:后端接口传参时通常是传递时间戳,前台拿到接口返回值中的时间戳通常需要格式化后再进行展示。在Python中,处理时间的模块有time、datetime。一、time模块1.time模块简介...
    99+
    2023-05-14
    Python 模块 内建库
  • Python中的日期时间模块怎么使用
    本篇内容主要讲解“Python中的日期时间模块怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python中的日期时间模块怎么使用”吧!Python 提供了 日期和时间模块用来处理日期和时...
    99+
    2023-07-05
  • Python之日期与时间处理模块(date和datetime)
    前言 在开发工作中,我们经常需要用到日期与时间,如: 作为日志信息的内容输出 计算某个功能的执行时间 用日期命名一个日志文件的名称 记录或展示某文章的发布或修改时间 其他 Pytho...
    99+
    2022-06-04
    模块 日期 时间
  • 如何使用Python中的时间和日期模块
    如何使用Python中的时间和日期模块导言:在编程中,处理时间和日期是非常常见的任务。Python提供了强大的时间和日期模块,使得处理时间和日期的操作变得更加简单和方便。本文将介绍Python中的时间和日期模块,并提供具体的代码示例,帮助读...
    99+
    2023-10-22
    Python 日期 时间
  • Python日期时间模块arrow的具体使用
    目录arrow模块的使用 获取arrow对象 获取当前时间 时间形式转换 转换成时间字符串 转换成时间戳 获取数据 修改时间 将字符串转换为arrow对象  &n...
    99+
    2022-11-12
  • 详解Python常用标准库之时间模块time和datetime
    目录time时间模块time -- 获取本地时间戳localtime -- 获取本地时间元组(UTC)gmtime -- 获取时间元组(GMT)mktime -- 时间元组获取时间戳...
    99+
    2022-11-11
  • python标准库模块之json库怎么使用
    今天小编给大家分享一下python标准库模块之json库怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。前言json,...
    99+
    2023-07-02
  • Python常用标准库之os模块与shutil模块怎么使用
    本文小编为大家详细介绍“Python常用标准库之os模块与shutil模块怎么使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python常用标准库之os模块与shutil模块怎么使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入...
    99+
    2023-06-30
  • Python标准库之zipfile和tarfile模块的使用
    目录zip格式ZipFile参数说明操作含义压缩方法常用方法tar包 和 gz、bz2、xz格式操作tar包压缩解压缩删除压缩包中的文件在我们常用的系统windows和Linux系统...
    99+
    2022-11-11
  • Python日期与时间模块(datetime+time+Calendar+dateuil )相关使用讲解
    目录1 前言2 datetime 模块2.1 date类2.2 time类2.3 datetime类2.4 timedelta类2.4.1 时间增加2.4.2 计算时间差2.5 da...
    99+
    2022-11-11
  • 怎么使用PHP操作日期和时间
    本文小编为大家详细介绍“怎么使用PHP操作日期和时间”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么使用PHP操作日期和时间”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一、操作日期和时间 在 PHP 中,有...
    99+
    2023-07-05
  • python标准库压缩包模块zipfile和tarfile怎么使用
    这篇文章主要介绍“python标准库压缩包模块zipfile和tarfile怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“python标准库压缩包模块zipfile和tarfile怎么使用”...
    99+
    2023-07-02
  • 怎么在Linux系统中使用修改日期和时间
    怎么在Linux系统中使用修改日期和时间?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。在 Linux 系统中保持日期和时间的同步是每一个 Linux 用户和系统管理员的重要...
    99+
    2023-06-07
  • Python time模块之时间戳与结构化时间怎么使用
    本篇内容介绍了“Python time模块之时间戳与结构化时间怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!导入相关库im...
    99+
    2023-07-02
  • 手机使用云服务器怎么设置时间和日期
    1. 介绍 在使用云服务器时,有时候我们需要手动设置服务器的时间和日期。这可能是因为服务器的时钟与实际时间不同步,或者是因为我们需要在特定的时间点执行某些任务。本文将介绍如何在手机上使用云服务器时设置时间和日期。 2. 操作步骤 2.1....
    99+
    2023-10-26
    日期 服务器 时间
  • 10个用于处理日期和时间的Python库分别是什么呢
    10个用于处理日期和时间的Python库分别是什么呢,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1️⃣arrow更好的 Python 日期时间操作类库。官网2...
    99+
    2023-06-02
  • Linux中怎么使用hwclock命令设置硬件日期和时间
    这期内容当中小编将会给大家带来有关Linux中怎么使用hwclock命令设置硬件日期和时间,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。具体方法如下:# hwclock &ndash;systoh...
    99+
    2023-06-16
  • 手机使用云服务器怎么设置时间和日期提醒
    设置定时器 在手机上设置定时器是非常简单的,只需要将需要提醒的事件或时间输入到手机的定时器中即可。比如,您可以设置每天早上8点定时器,提醒您起床并设置一个闹钟,提醒您上班时间快到了。此外,您也可以将一些特定的事件设置为提醒事件,如“早...
    99+
    2023-10-28
    日期 服务器 时间
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作