首页 > 编程语言 >【python】时间和日期

【python】时间和日期

时间:2024-06-10 21:58:41浏览次数:27  
标签:python datetime print 日期 时间 time date now

1. datetime模块概述

Python的datetime模块提供了用于处理日期和时间的类和函数。主要类包括datetimedatetimetimedeltatzinfo(与时区有关)。

2. 主要类及其功能

2.1 datetime类

datetime类是最常用的类之一,它表示一个具体的日期和时间(年、月、日、时、分、秒、微秒)。

  • 常用属性:yearmonthdayhourminutesecondmicrosecond
  • 常用方法:
    • now(): 返回当前日期和时间的datetime对象。
    • strftime(format): 将datetime对象格式化为字符串。
    • strptime(date_string, format): 将字符串解析为datetime对象。
now = datetime.datetime.now()  
print(now)  # 输出类似:2023-10-23 14:05:30.123456
2.2 date类

date类表示一个日期(年、月、日)。

  • 常用属性:yearmonthday
  • 常用方法:
    • today(): 返回当前本地日期的date对象。
    • fromtimestamp(timestamp): 根据给定的时间戳返回date对象。
    • replace(year=self.year, month=self.month, day=self.day): 替换日期对象中的部分属性。
today = datetime.date.today()  
print(today)  # 输出类似:2023-10-23
2.3 time类

time类表示一天中的时间(时、分、秒、微秒),但不包含日期信息。

  • 表示一天中的时间(时、分、秒、微秒)。
  • 常用属性:hourminutesecondmicrosecond
current_time = datetime.time(14, 5, 30)  
print(current_time)  # 输出类似:14:05:30
2.4 timedelta类

timedelta类表示两个日期或时间之间的差值,通常用于日期的算术运算。

  • 常用方法:
    • timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0): 创建一个时间间隔对象。
    • 加法和减法:datetimedate对象可以与timedelta对象相加或相减。
# 获取一天后的日期  
one_day_later = datetime.date.today() + datetime.timedelta(days=1)  
print(one_day_later)  # 输出类似:2023-10-24
2.5 tzinfo类
  • 与时区有关的信息,是一个抽象基类,通常不直接使用,而是使用其子类,如pytz库中的时区类。

3. 日期和时间格式化

你可以使用strftime()strptime()方法将日期和时间对象转换为字符串,或将字符串转换为日期和时间对象。

3.1 strftime()

strftime()方法将日期和时间对象转换为格式化的字符串。

formatted_now = now.strftime("%Y-%m-%d %H:%M:%S")
print(formatted_now)  # 输出类似:2023-10-23 14:05:30

%Y 表示四位数的年份,%m 表示月份,%d 表示日期,%H 表示小时(24小时制),%M 表示分钟,%S` 表示秒。

3.2 strptime()

strptime()方法将格式化的字符串转换为日期和时间对象。

date_string = "2023-10-23 14:05:30"
parsed_date = datetime.datetime.strptime(date_string, "%Y-%m-%d %H:%M:%S")
print(parsed_date)  # 输出类似:2023-10-23 14:05:30

4. 示例

4.1 获取当前日期和时间
from datetime import datetime
now = datetime.now()
print(now)  # 输出当前日期和时间,例如:2024-06-10 21:44:06.xxxxxxxx
4.2 创建指定日期和时间
from datetime import datetime
specific_time = datetime(2024, 6, 10, 12, 0, 0)
print(specific_time)  # 输出指定日期和时间,例如:2024-06-10 12:00:00
4.3 格式化日期和时间
from datetime import datetime
now = datetime.now()
formatted = now.strftime("%Y-%m-%d %H:%M:%S")
print(formatted)  # 输出格式化后的日期和时间,例如:2024-06-10 21:44:06
4.4 计算日期和时间的差值
from datetime import datetime, timedelta
start_time = datetime(2024, 6, 1)
end_time = datetime(2024, 6, 10)
delta = end_time - start_time
print(delta.days)  # 输出两个日期之间的天数,例如:9
4.5 时区处理(需要pytz库)
import pytz
from datetime import datetime

# 获取纽约时区信息
tz_ny = pytz.timezone('America/New_York')

# 将本地时间转换为纽约时间
local_now = datetime.now()
ny_now = local_now.astimezone(tz_ny)
print(ny_now)  # 输出纽约当前时间

5. 总结

Python的datetime模块为日期和时间处理提供了强大的功能,包括创建日期时间对象、格式化输出、计算时间间隔、处理时区等。通过合理使用这些类和函数,可以方便地进行日期和时间的各种操作。

标签:python,datetime,print,日期,时间,time,date,now
From: https://blog.csdn.net/MAOZI8/article/details/139582851

相关文章

  • 【python】os模块详解
    Python的os模块提供了与操作系统交互的功能。它提供了很多函数,用于读取或修改系统目录和文件、运行系统命令、处理系统环境变量等。以下是一些常用的os模块函数及其简要说明:一、目录和文件操作获取当前工作目录os.getcwd()importoscurrent_dir=os.getcwd()pr......
  • Python异常处理的几种方法
    Python的异常处理语句主要包括以下几个关键字:try/excepttry块包含可能会引发异常的代码。except块则包含用于处理这些异常的代码。try:#尝试执行的代码块result=10/0exceptZeroDivisionError:#当发生ZeroDivisionError异常时执行的代码块......
  • python大学生创新创业大赛竞赛志愿者招募平台_s64ag
    大学生作为我国的年轻高级知识人群,有着较为丰富的知识储备和相较于其他高级知识份子所欠缺的创造力,是符合在我国十三五规划的创业主要人群。但因为大学生这个群体社会实践经验与能力的欠缺,与创业的成功要素所矛盾,导致大部分大学生创业在初期就自行夭折,使大学生创业成为了国家......
  • 用python进行选岗
    importpandasaspdfromopenpyxlimportworkbook#新建一张表存储提取数据wb=workbook.Workbook()#使用pandas的read_excel函数,设置参数sheet_name为None来获取所有sheet的名称sheet_names=list(pd.read_excel('filename.xls',sheet_name=None).keys())forsh......
  • pydispatch:Python中的事件驱动编程
    pydispatch是一个轻量级的事件调度器,广泛应用于实现观察者模式。它允许对象之间通过事件进行通信,而无需直接引用彼此,从而实现代码的模块化和可维护性。1.安装pydispatch使用pip安装pydispatch库:pipinstallpydispatch 2.基本概念pydispatch库中有3个核心概念:信号(Sig......
  • Python 潮流周刊#55:分享 9 个高质量的技术类信息源!
    大家好,我是猫哥,今天给大家分享几个高质量的技术类信息源。本文分享的信息源都是周刊类型的,所谓周刊类,就是以固定每周的频率更新,每期分享很多精华内容的链接。它的特点是信息密度极高,可以节省你去查找信息的时间,高效的学习者都会喜欢这类内容。如果不是看了这篇文章,我猜你可能想......
  • 【Python教程】4-字符串、列表、字典、元组与集合操作
    在整理自己的笔记的时候发现了当年学习python时候整理的笔记,稍微整理一下,分享出来,方便记录和查看吧。个人觉得如果想简单了解一名语言或者技术,最简单的方式就是通过菜鸟教程去学习一下。今后会从python开始重新更新,然后更新深度学习的一些框架,一些代码,从CV到NLP都会有相应......
  • python做后端好吗
    Python是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。Python的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。Python是一种计算机程序设计语言,既可用于前端还可用于后端开发。它是一......
  • python为什么要字符串格式化
    Python2.6开始,新增了一种格式化字符串的函数str.format(),它增强了字符串格式化的功能。相对于老版的%格式方法,它有很多优点。1.在%方法中%s只能替代字符串类型,而在format中不需要理会数据类型;2.单个参数可以多次输出,参数顺序可以不相同;3.填充方式十分灵活,对齐方式十分强......
  • Python函数编程
    ⚠申明:未经许可,禁止以任何形式转载,若要引用,请标注链接地址。全文共计3670字,阅读大概需要10分钟......