Python 格式化AM-PM时间程序
在Python中,我们有一些内置的时间函数,如strftime()和datetime.now(),可以用于以AM/PM格式查找时间。AM/PM格式的时间可以用于各种应用,例如用户界面、报表文档、数据可视化和事件调度。在午夜11:59:00到中午12点之间的时间我们称为上午。同样地,我们可以说从中午12点到午夜11:59:00之间的时间为下午。缩写AM/PM用于表示具体的时间。
语法
下面的示例中使用了以下语法:
strftime('%I:%M:%S %p')
strftime() 是 Python 的内置函数,可用于表示时间格式。
下面的参数格式如下:
- %I - 小时
-
%M - 分钟
-
%S - 秒
-
%p - 上午/下午
datetime.now()
这是Python中的一个内置函数,用于找到当前时间。
localtime()
这是Python中的内置方法,它返回当前时间。
示例1
在以下示例中,我们将通过从名为datetime的模块中导入datetime的所有内容来开始程序,该模块将找到本地时间。然后将24小时格式的时间存储在变量t_str中,该变量将被转换为12小时格式,并检查它是上午还是下午。现在我们正在使用内置函数strftime()。该函数接受两个参数-t_str(给定的时间)和‘%H:%M%S’(设置时间格式为小时、分钟和秒)。此时间格式表示24小时制。接下来,我们再次使用strftime()函数将时间格式设置为12小时制。在参数中,%p用于检查时间是上午还是下午。最后,我们使用变量t_str和t_am_pm来打印结果。
from datetime import datetime
t_str = '22:45:32'
t_obj = datetime.strptime( t_str, '%H:%M:%S')
#Time format representation
t_am_pm = t_obj.strftime('%I:%M:%S %p')
print("The given time", t_str)
print("The format in (AM/PM):", t_am_pm)
输出
The given time 22:45:32
The format in (AM/PM): 10:45:32 PM
示例2
在以下示例中,我们将通过从名为 datetime 的模块中导入所有内容来启动程序,它将找到本地时间。然后,我们创建变量 dt_obj 来存储通过预定义函数 datetime.now() 获取当前时间的值。然后使用预定义函数 strftime() 来设置12小时制的时间格式。这个函数将在变量 dt_obj 上执行,并将结果存储在变量 ts_am_pm 中。最后,我们使用变量 dt_obj 和 ts_am_pm 的帮助打印结果。
from datetime import datetime
dt_obj = datetime.now()
ts_am_pm = dt_obj.strftime('%I:%M:%S %p')
print("The current time:",dt_obj)
print("The format in (AM/PM):",ts_am_pm)
输出
The current time: 2023-04-18 17:50:01.963742
The format in (AM/PM): 05:50:01 PM
示例3
在下面的示例中,我们将创建一个名为format_time()的函数,该函数以一个datetime对象作为参数,并返回表示时间的字符串,该字符串采用AM/PM格式。然后,该函数使用datetime对象的strftime()方法根据指定的格式字符串’%I:%M %p’格式化时间。该格式指定了12小时制(%I)的时间表,包括分钟(%M)和上午/下午指示符(%p)。
from datetime import datetime
def p_time(time):
return time.strftime('%I:%M %p')
time = datetime.now()
time_format = p_time(time)
print("Time in AM/PM:",time_format)
输出
Time in AM/PM: 06:04 PM
示例4
在下面的示例中,我们首先导入名为time的模块,该模块定义了设置当前时间和允许用户使用内置方法格式化时间的方法。然后,通过使用内置方法localtime()将该值存储在名为present_time的变量中进行初始化。然后,我们使用strftime方法使用格式化字符串“%I:%M%p”将时间格式化为上午/下午格式。%I格式代码表示12小时制的小时,%M表示分钟,%p表示上午或下午,并存储在变量t_format中。最后,我们使用变量t_format打印结果。
import time
present_time = time.localtime()
t_format = time.strftime("%I:%M %p", present_time)
print(t_format)
输出
06:18 PM
结论
我们看到内置函数strftime()帮助表示时间的格式为上午或下午。在示例1中,我们讨论了将24小时制转换为12小时制以检查时间模式是否为上午/下午的方法。在示例2中,我们看到如何使用datetime.now()函数来初始化当前时间。然后使用%p检查上午/下午的时间。