📜  日期格式 flouytter - Python (1)

📅  最后修改于: 2023-12-03 15:26:18.520000             🧑  作者: Mango

日期格式 flouytter - Python

在 Python 中,我们经常需要处理日期和时间。对于许多任务,包括文件创建、数据记录等,确切的日期时间是非常重要的。常见的日期格式包括 ISO8601、RFC 2822、MySQL 时间戳格式等。

Python 有一个内置的日期和时间模块 datetime,可帮助我们在 Python 中处理日期和时间。datetime 模块提供了几个用于处理日期和时间的类。

import datetime

# 获取当前日期和时间
now = datetime.datetime.now()
print(f"当前日期和时间:{now}")

# 获取当前日期
today = datetime.date.today()
print(f"当前日期:{today}")

# 创建一个日期对象
my_date = datetime.date(2021, 5, 18)
print(f"自定义日期:{my_date}")

# 将日期格式化为字符串
date_str = my_date.strftime("%Y-%m-%d")
print(f"格式化后的日期:{date_str}")

输出结果:

当前日期和时间:2021-06-28 11:54:39.263354
当前日期:2021-06-28
自定义日期:2021-05-18
格式化后的日期:2021-05-18

datetime 模块还提供了许多方便的函数和方法进行日期和时间计算、比较和格式化。例如,以下是几个常用的函数和方法:

import datetime

# 两个日期之间的天数
d1 = datetime.date(2021, 5, 18)
d2 = datetime.date(2021, 6, 28)
delta = d2 - d1
print(f"日期之间的天数:{delta.days}")

# 日期加减
d3 = d2 + datetime.timedelta(days=7, hours=12)
print(f"加 7 天 12 小时后的日期:{d3.strftime('%Y-%m-%d %H:%M:%S')}")

# 检查一个日期是否在另一个日期之前或之后
print(d1 < d2)
print(d3 > d2)

# 将字符串转换为日期对象
date_str = "2022-01-01"
date = datetime.datetime.strptime(date_str, "%Y-%m-%d")
print(f"字符串转换后的日期:{date}")

输出结果:

日期之间的天数:41
加 7 天 12 小时后的日期:2021-07-06 12:00:00
True
True
字符串转换后的日期:2022-01-01 00:00:00

在处理日期和时间时,要注意时区的问题。Python 中有一个 pytz 模块,可帮助我们处理时区相关的日期和时间。

import datetime
import pytz

# 将当前时间转换为纽约时区的时间
now = datetime.datetime.now(pytz.timezone("America/New_York"))
print(f"纽约当前时间:{now.strftime('%Y-%m-%d %H:%M:%S %Z%z')}")

# 将字符串时间转换为 UTC 时间
date_str = "2022-01-01 00:00:00"
date_utc = pytz.utc.localize(datetime.datetime.strptime(date_str, "%Y-%m-%d %H:%M:%S"))
print(f"UTC 时间:{date_utc.strftime('%Y-%m-%d %H:%M:%S %Z%z')}")

输出结果:

纽约当前时间:2021-06-28 11:54:39 EDT-0400
UTC 时间:2022-01-01 00:00:00 UTC+0000

以上就是 Python 处理日期和时间的简介,希望对你有所帮助!