一、基礎格式化
Python中常用的日期格式化字符串如下:
%Y 年份,4位數字 %m 月份,1-12 %d 日期,1-31 %H 小時,24小時制,0-23 %M 分鐘,0-59 %S 秒數,0-59
如要將日期格式化為字符串:
import datetime
today = datetime.datetime.today()
formatted = today.strftime('%Y-%m-%d %H:%M:%S')
print(formatted)
輸出:2022-07-12 17:26:40
使用datetime.datetime.strptime()方法將字符串轉為datetime對象:
datetime_str = '2022-07-12 17:26:40' datetime_obj = datetime.datetime.strptime(datetime_str, '%Y-%m-%d %H:%M:%S') print(datetime_obj)
輸出:2022-07-12 17:26:40
二、日期加減
使用datetime.timedelta()函數可以對日期加減。
import datetime
today = datetime.datetime.today()
delta = datetime.timedelta(days=3)
new_date = today + delta
formatted = new_date.strftime('%Y-%m-%d %H:%M:%S')
print(formatted)
輸出:2022-07-15 17:26:40
三、本地化
Python中有個locale模塊,可以用於本地化日期。
import datetime
import locale
today = datetime.datetime.today()
locale.setlocale(locale.LC_ALL, 'en_US')
formatted = today.strftime('%A, %B %d, %Y')
print(formatted)
輸出:Tuesday, July 12, 2022
四、時區
使用pytz模塊可以對日期進行時區轉換。
import datetime
import pytz
today = datetime.datetime.now(tz=pytz.UTC)
pst_tz = pytz.timezone('America/Los_Angeles')
pst_time = today.astimezone(pst_tz)
formatted = pst_time.strftime('%Y-%m-%d %H:%M:%S %Z%z')
print(formatted)
輸出:2022-07-12 10:26:40 PDT-0700
五、時間戳
使用time模塊的time()函數可以獲取當前時間戳,使用datetime.datetime.fromtimestamp()函數可以將時間戳轉換為datetime對象。
import datetime
import time
timestamp = time.time()
datetime_obj = datetime.datetime.fromtimestamp(timestamp)
formatted = datetime_obj.strftime('%Y-%m-%d %H:%M:%S')
print(formatted)
輸出:2022-07-12 17:26:40
六、strftime格式化字符列表
| %a | 星期幾的簡寫 | Wed |
| %A | 星期幾的全稱 | Wednesday |
| %b | 月份的簡寫 | Jan |
| %B | 月份的全稱 | January |
| %c | 本地日期時間表示 | Mon Jul 12 17:26:40 2022 |
| %d | 月份中的日期(01-31) | 31 |
| %H | 24小時制小時數(00-23) | 23 |
| %I | 12小時制小時數(01-12) | 11 |
| %j | 一年中的第幾天(001-366) | 365 |
| %m | 月份數字(01-12) | 12 |
| %M | 分鐘數(00-59) | 59 |
| %p | AM/PM | PM |
| %S | 秒數(00-61) | 59 |
| %U | 一年中的第幾周(00-53),星期日為一周的第一天 | 52 |
| %w | 一周中的第幾天,星期日為0 | 0 |
| %W | 一年中的第幾周(00-53),星期一為一周的第一天 | 52 |
| %x | 本地日期表示 | 07/12/22 |
| %X | 本地時間表示 | 17:26:40 |
| %y | 2位數字的年份 | 22 |
| %Y | 4位數字的年份 | 2022 |
| %z | UTC偏移量 | +0800 |
| %Z | 時區 | CST |
原創文章,作者:ZDYAH,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/369054.html
微信掃一掃
支付寶掃一掃