一、常見日期格式及strptime的使用方法
在處理日期相關的數據時,不同的日期格式之間會帶來很多問題。Python內置的datetime模塊提供了一種便捷的方式來處理這些情況。datetime.datetime.strptime()方法可以將字符串解析為日期時間對象。
在使用該方法時,需要將日期格式作為第一個參數,字符串作為第二個參數。常見的日期格式如下:
<%a> - Weekday abbreviated (Mon)
<%A> - Weekday full name (Monday)
<%b> - Month abbreviated (Jan)
<%B> - Month full name (January)
<%c> - Date and time (Tue Mar 19 22:56:03 2019)
<%d> - Day of the month (19)
<%H> - Hour in 24-hour format (22)
<%I> - Hour in 12-hour format (10)
<%j> - Day of the year (78)
<%m> - Month (03)
<%M> - Minute (26)
<%p> - AM or PM (PM)
<%S> - Second (28)
<%U> - Week number beginning on Sunday (12)
<%w> - Weekday as decimal number (0=Sunday, 6=Saturday)
<%W> - Week number beginning on Monday (12)
<%x> - Date (03/19/19)
<%X> - Time (22:57:23)
<%y> - Year without century (19)
<%Y> - Year with century (2019)
<%Z> - Timezone
比如,原始字符串為”2019-03-19″,需要將其轉化為日期對象,則可以使用以下代碼:
import datetime
date_str = "2019-03-19"
date_obj = datetime.datetime.strptime(date_str, "%Y-%m-%d")
print(date_obj)
輸出如下:
2019-03-19 00:00:00
二、其它常用功能
除了將字符串解析為日期時間對象,datetime.datetime.strptime()還可以進行其它一些常用操作。如:
1. 將字符串轉化為時間戳
可以通過在strptime()中添加指定格式的參數,將一個時間轉化為時間戳。示例如下:
import datetime
time_str = "2019-03-19 22:57:23"
time_obj = datetime.datetime.strptime(time_str, "%Y-%m-%d %H:%M:%S")
time_stamp = int(time_obj.timestamp())
print(time_stamp)
輸出如下:
1553018243
2. 將日期對象轉化為指定格式的字符串
如果需要將日期對象轉化為指定格式的字符串,可以使用datetime.datetime.strftime()方法。該方法的參數與strptime()方法的參數類似,不再贅述。示例如下:
import datetime
date_obj = datetime.datetime.now()
date_str = date_obj.strftime("%Y-%m-%d %H:%M:%S")
print(date_str)
輸出如下:
2022-02-09 14:20:54
三、擴展閱讀
除了datetime.datetime.strptime(),Python中的datetime模塊還包括以下類方法:
- datetime.datetime.now():獲取當前時間。
- datetime.datetime.combine(date, time):將日期對象和時間對象合併為一個日期時間對象。
- datetime.datetime.fromtimestamp(timestamp):將時間戳轉化為日期時間對象。
- datetime.datetime.date():獲取日期對象。
- datetime.datetime.time():獲取時間對象。
使用這些類方法可以更加靈活地進行日期時間的操作。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/296247.html