您的位置:

Python strftime方法详解

一、strftime方法概述

Python strftime()方法用于将表示时间的元组或结构体转换为格式化的字符串。在生成日期字符串时,strftime()方法是一个非常强大、灵活和易于使用的工具。

该方法包含两个参数,一个是格式化字符串,另一个是struct_time元组或Python time模块中的时间戳。下面举例说明:

    import time
    
    # struct_time元组
    struct_time = time.localtime()
    print(time.strftime("%Y-%m-%d %H:%M:%S", struct_time))
      
    # 时间戳
    timestamp = time.time()
    print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(timestamp)))

上述代码中,我们通过time模块中的localtime()方法获取当前时间的struct_time元组,然后通过strftime()方法将其转换为指定格式的时间字符串;还可以通过time.time()方法获取当前时间的时间戳,然后将其转换为struct_time元组,再用strftime()方法转换为指定格式的时间字符串。

二、日期格式化常用的参数

strftime()方法中的格式化字符串中可以使用不同的参数表示不同的日期时间格式,下面列举一些常用的参数:

%Y:表示完整的年份,如2021。

%m:表示月份,如01表示一月,11表示十一月。

%B:表示月份的名称,如January表示一月。

%d:表示一个月中的第几天,如01表示一月一日。

%A:表示星期几的名称,如Monday表示星期一。

%H:表示小时,24小时制,如23表示晚上11点。

%M:表示分钟,如10表示10分。

%S:表示秒钟,如15表示15秒。

%p:表示午前或者午后“AM”或者“PM”。

%j:表示一年中的第几天,如第45天表示045。

三、日期格式化示例代码

1、年份和月份

    import time
    
    date = time.strftime("%Y年%m月", time.localtime())
    print(date)

输出结果为:2022年04月。

2、星期几和小时分钟秒数

    import time
    
    date = time.strftime("%A %H:%M:%S", time.localtime())
    print(date)

输出结果为:Sunday 10:15:20。

3、一年中的第几天

    import time
    
    date = time.strftime("%j", time.localtime())
    print("今天是一年中的第{}天".format(date))

输出结果为:今天是一年中的第058天。

4、时间戳转换格式化字符串

    import time
    
    timestamp = 1648963528
    date = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(timestamp))
    print(date)

输出结果为:2022-04-02 10:12:08。

四、总结

Python strftime方法是一个非常强大、灵活和易于使用的工具,通过结合常用的日期时间参数,我们可以使用strftime方法将日期时间转换为指定的字符串格式。通过这篇文章,你已经了解了Python strftime方法的基本用法和常用的参数,可以通过实际的应用来提高对该方法的理解和应用能力。