Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

ฉันจะแสดงวันที่เช่น 5 ส.ค. โดยใช้ strftime ของ Python ได้อย่างไร


ไม่สามารถรับส่วนต่อท้ายเช่น st, nd, rd และ th โดยใช้ฟังก์ชัน strftime ฟังก์ชัน strftime ไม่มีคำสั่งที่รองรับการจัดรูปแบบนี้ คุณสามารถสร้างฟังก์ชันของคุณเองเพื่อหาคำต่อท้ายและเพิ่มลงในสตริงการจัดรูปแบบที่คุณระบุได้

ตัวอย่าง

from datetime import datetime
now = datetime.now()
def suffix(day):
  suffix = ""
  if 4 <= day <= 20 or 24 <= day <= 30:
    suffix = "th"
  else:
    suffix = ["st", "nd", "rd"][day % 10 - 1]
  return suffix
my_date = now.strftime("%b %d" + suffix(now.day))
print(my_date)

ผลลัพธ์

สิ่งนี้จะให้ผลลัพธ์ -

Jan 15th