Python函数实现日期转换
Python是一种流行的编程语言,它可以用来进行日常编程、Web开发、数据分析和科学计算。其中,Python还提供丰富的时间和日期处理函数,用于将日期和时间表示为不同的格式和单位。在实际编程中,日期和时间的转换经常会涉及到不同格式之间的转换,本文将介绍Python函数实现日期转换的方法。
一、日期格式化
在Python中,日期格式化是将日期表示为字符串的过程,我们可以使用strftime函数将日期格式化为字符串。
strftime的语法如下:
strftime(format[, tuple])
- format:日期格式化字符串;
- tuple:可选参数,是一个包含9个整数的元组,其中的每个数字表示一个日期时间部分的值,顺序为(年,月,日,时,分,秒,星期,一年中第几天,是否是夏令时)。
下面是一些常用的日期格式化字符串:
序号 格式化字符串 解释
1 %Y 4位数的年份表示(000-9999)
2 %m 月份(01-12)
3 %d 月内中的一天(01-31)
4 %H 24小时制小时数(00-23)
5 %I 12小时制小时数(01-12)
6 %M 分钟数(00-59)
7 %S 秒数(00-59)
8 %w 星期(0-6),其中0表示星期天
9 %U 一年中的周数(00-53),星期天被认为是每周的 天
10 %W 一年中的周数(00-53),星期一被认为是每周的 天
11 %z 指定时区偏移量,格式如+HHMM或-HHMM,例如-0400表示美国东部标准时间
12 %Z 时区名称,例如:CST表示中央标准时间
下面是一个示例,将当前日期格式化为指定格式:
import datetime
now = datetime.datetime.now()
# 输出格式化后的日期
print(now.strftime("%Y-%m-%d %H:%M:%S"))
输出:
2021-05-06 16:09:18
二、字符串转日期
我们还可以使用Python的datetime模块将字符串转换为日期。使用该模块时,我们需要指定日期的格式,这样Python才能正确地将其转换为日期对象。
strptime的语法如下:
datetime.datetime.strptime(date_string, format)
- date_string:要转换为日期对象的字符串;
- format:日期格式化字符串。
下面是一个示例,将字符串转换为日期:
import datetime
date_string = "2021-05-06"
date = datetime.datetime.strptime(date_string, "%Y-%m-%d")
print(date)
输出:
2021-05-06 00:00:00
三、日期转时间戳
时间戳是一种比日期更简单的日期表示方法,它是从1970年1月1日00:00:00开始计算的秒数。Python的time模块提供了将日期转换为时间戳的函数,我们可以使用该函数将日期转换为时间戳。
下面是一个示例,将当前日期转换为时间戳:
import time
import datetime
now = datetime.datetime.now()
timestamp = time.mktime(now.timetuple())
print(timestamp)
输出:
1620285241.0
四、时间戳转日期
我们还可以将时间戳转换为日期对象,用于将时间戳转换为日期对象的函数是gmtime和localtime函数。其中,gmtime函数将时间戳转换为UTC日期对象,localtime将时间戳转换为本地时间日期对象。两个函数的返回值都是一个元组,其中包含日期对象的各个部分。
下面是一个示例,将时间戳转换为日期:
import time
timestamp = 1620285241
# 将时间戳转换为本地时间日期对象
local_time = time.localtime(timestamp)
print(local_time)
# 将本地时间日期对象转换为字符串日期
date_string = time.strftime("%Y-%m-%d %H:%M:%S", local_time)
print(date_string)
输出:
time.struct_time(tm_year=2021, tm_mon=5, tm_mday=6, tm_hour=16, tm_min=34, tm_sec=1, tm_wday=3, tm_yday=126, tm_isdst=0)
2021-05-06 16:34:01
总结
本文介绍了Python函数实现日期转换的方法。我们可以使用strftime函数将日期格式化为字符串,使用strptime函数将字符串转换为日期对象,使用mktime函数将日期对象转换为时间戳,使用gmtime和localtime函数将时间戳转换为日期对象。在实际编程中,我们可以根据需要选择不同的函数,以实现日期的转换。
