Python入门教程(二十七)Python的日期

Python入门教程(二十七)Python的日期

日期和时间是我们日常生活中非常重要的部分,而Python标准库中的datetime模块提供了很好的日期和时间处理工具。本教程将介绍datetime模块的基础用法和常见应用。

datetime模块概述

datetime模块包含了日期和时间处理类,包括:

  • date:处理日期的类
  • time:处理时间的类
  • datetime:同时处理日期和时间的类
  • timedelta:用于计算时间差的类

date类

date类处理的是日期,包含年、月、日三个部分。创建date对象方法如下:

from datetime import date

d = date(2022, 12, 31)
print(d)

输出结果为:

2022-12-31

date对象还有一些常见的属性和方法,比如:

  • year:年份
  • month:月份
  • day:日份
  • weekday():返回星期几,星期一为0,星期天为6
  • isoweekday():返回星期几,星期一为1,星期天为7

示例代码如下:

from datetime import date

d = date(2022, 12, 31)
print(d.year)  # 2022
print(d.month)  # 12
print(d.day)  # 31

print(d.weekday())  # 5 (星期六)
print(d.isoweekday())  # 6 (星期六)

time类

time类处理的是时间,包含时、分、秒、微秒四个部分。创建time对象方法如下:

from datetime import time

t = time(12, 30, 0, 500000)
print(t)

输出结果为:

12:30:00.500000

time对象还有一些常见的属性和方法,比如:

  • hour:小时
  • minute:分钟
  • second:秒
  • microsecond:微秒

示例代码如下:

from datetime import time

t = time(12, 30, 0, 500000)
print(t.hour)  # 12
print(t.minute)  # 30
print(t.second)  # 0
print(t.microsecond)  # 500000

datetime类

datetime类是date类和time类的结合体,处理的是日期和时间。创建datetime对象方法如下:

from datetime import datetime

dt = datetime(2022, 12, 31, 12, 30, 0, 500000)
print(dt)

输出结果为:

2022-12-31 12:30:00.500000

datetime对象常用的属性和方法如下:

  • year:年份
  • month:月份
  • day:日份
  • hour:小时
  • minute:分钟
  • second:秒
  • microsecond:微秒
  • date():返回date对象
  • time():返回time对象
  • timestamp():返回时间戳

示例代码如下:

from datetime import datetime

dt = datetime(2022, 12, 31, 12, 30, 0, 500000)
print(dt.year)  # 2022
print(dt.month)  # 12
print(dt.day)  # 31
print(dt.hour)  # 12
print(dt.minute)  # 30
print(dt.second)  # 0
print(dt.microsecond)  # 500000

print(dt.date())  # 2022-12-31
print(dt.time())  # 12:30:00.500000

print(dt.timestamp())  # 1661949000.5 (时间戳)

timedelta类

timedelta类是用于计算时间差的类,可以使用datetime对象相减得到一个timedelta对象,或者直接创建一个timedelta对象。timedelta对象的参数包括天、秒、微秒。

示例代码如下:

from datetime import datetime, timedelta

dt1 = datetime(2022, 12, 31, 12, 30, 0)
dt2 = datetime(2022, 12, 30, 12, 30, 0)

td = dt1 - dt2
print(td)  # 1 day, 0:00:00

td = timedelta(days=1)
print(td)  # 1 day

td = timedelta(seconds=60)
print(td)  # 0:01:00

常用日期格式化

在实际应用中,日期和时间通常需要以特定的格式呈现。datetime类提供了strftime()方法,可以将日期和时间格式化成字符串,常用的格式化参数如下:

  • %Y:四位数的年份表示(如:2022)
  • %m:月份(01-12)
  • %d:日(01-31)
  • %H:24小时制小时数(00-23)
  • %M:分钟数(00-59)
  • %S:秒数(00-59)
  • %f:微秒数
  • %a:本地简化星期名称
  • %A:本地完整星期名称
  • %b:本地简化的月份名称
  • %B:本地完整的月份名称
  • %c:本地相应的日期和时间表示
  • %p:本地A.M.或P.M.的等价符
  • %z:时区名称
  • %Z:时区偏移量

示例代码如下:

from datetime import datetime

dt = datetime(2022, 12, 31, 12, 30, 0, 500000)
print(dt.strftime('%Y-%m-%d %H:%M:%S.%f'))  # 2022-12-31 12:30:00.500000
print(dt.strftime('%Y年%m月%d日 %H:%M:%S'))  # 2022年12月31日 12:30:00

总结

本教程介绍了datetime模块的基础用法和常见应用,包括date类、time类、datetime类和timedelta类。另外,也介绍了常用的日期格式化方法。

示例说明

示例1:计算日期差

下面的示例演示了如何计算两个日期之间的天数差:

from datetime import date

d1 = date(2022, 12, 31)
d2 = date(2022, 12, 1)

delta = d1 - d2

print(delta.days) # 输出 30

示例2:获取当前日期时间

下面的示例演示了如何获取当前日期和时间:

from datetime import datetime

now = datetime.now()

print(now.strftime('%Y-%m-%d %H:%M:%S')) # 输出 2022-01-01 12:30:00

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python入门教程(二十七)Python的日期 - Python技术站

(0)
上一篇 2023年6月2日
下一篇 2023年6月2日

相关文章

  • Python filterfalse()和filter()过滤方法

    当我们需要从一个序列中筛选出符合特定条件的数据时,可以使用Python自带的filter()函数来实现。不过,Python 3.0 之后,为了方便用户对数据进行更加细致的筛选而新增了filterfalse()函数,本文将对两个函数的使用方法进行详细说明。 filter() 函数 filter()函数的作用是过滤掉不符合条件的元素,返回一个由所有符合条件的元素…

    python-answer 2023年3月25日
    00
  • python基于tkinter点击按钮实现图片的切换

    下面是关于“python基于tkinter点击按钮实现图片的切换”的完整攻略: 步骤一:准备工作 在编写代码前,需要完成以下几个步骤: 确保你的计算机中已经安装了Python环境,并且安装了Tkinter库。 准备两张需要切换的图片,例如”image1.png”和”image2.png”。 将图片放置在你的Python脚本文件所在的文件夹中。 步骤二:导入必…

    python 2023年6月13日
    00
  • 在Python中使用NumPy将切比雪夫级数提高到一个幂数

    要使用NumPy将切比雪夫级数提高到一个幂数,需要按照以下步骤进行: 步骤一:导入NumPy 首先需要导入NumPy库,可以使用以下代码实现: import numpy as np 步骤二:定义切比雪夫级数 切比雪夫级数可以表示为以下形式: $$T_n(x) = \cos(n \cos^{-1}(x))$$ 其中,$n$表示级数的幂数,$x$为输入值。 可以…

    python-answer 2023年3月25日
    00
  • Python3 ffmpeg视频转换工具使用方法解析

    Python3ffmpeg 视频转换工具使用方法解析 什么是 Python3ffmpeg? Python3ffmpeg 是一个基于 Python3 和 FFmpeg 的视频转换工具,可以方便地将不同格式的视频文件互相转换,支持常见格式的视频文件(如 MP4、AVI、MKV 等)。 Python3ffmpeg 的安装 首先需要安装 Python3 和 FFmp…

    python 2023年5月13日
    00
  • python的继承知识点总结

    Python的继承知识点总结 在Python中,继承是一种强大的面向对象编程技术,它支持代码重用,并允许创建具有共同行为和属性的对象。本文将介绍Python中继承的相关知识点,包括继承的类型、继承的语法、方法重写和多重继承等。 继承的类型 在Python中,继承可以分为以下两种类型: 单继承 单继承是指一个类从另一个类继承属性和方法。被继承的类称为父类或超类…

    python 2023年6月5日
    00
  • [Python自动化]使用Python Pexpect模块实现自动化交互脚本使用心得

    使用Python Pexpect模块实现自动化交互脚本使用心得 参考文档:https://pexpect.readthedocs.io/en/stable/ 前言 在最近的工作中,需要使用DockerFile构建镜像。在构建镜像的过程中,有一些执行的命令是需要交互的。例如安装tzdata(apt install tzdata),不过在使用apt安装时,可以直…

    python 2023年4月25日
    00
  • Python使用psutil获取系统信息

    下面我们来详细讲解下“Python使用psutil获取系统信息”的完整攻略。 1. 什么是psutil psutil是一个跨平台的库,它可以获取系统进程、CPU、磁盘、内存、网络等信息。使用起来非常方便,只需要一句代码就可以获取到大量的系统信息。 2. 安装psutil 使用psutil需要先进行安装,可以使用pip安装,打开终端或者命令提示符,输入以下命令…

    python 2023年5月30日
    00
  • 利用Python中的内置open函数读取二进制文件

    读取二进制文件可以使用Python内置的open函数,通过指定读取模式’rb’,来读取文件的二进制数据。 下面是利用Python中的内置open函数读取二进制文件的完整攻略: 1. 打开二进制文件 使用open函数打开二进制文件,可以指定打开模式为’rb’,代码示例: with open(‘test.bin’, ‘rb’) as f: # f为文件对象,可以…

    python 2023年6月2日
    00
合作推广
合作推广
分享本页
返回顶部