แก้ไขแล้ว: หลามไม่ strftime ทำงานกับวัตถุวันที่

ปัญหาหลักเกี่ยวกับฟังก์ชัน strftime() ของ Python คือมันไม่ทำงานกับอ็อบเจกต์วันที่ ซึ่งหมายความว่าหากคุณมีออบเจกต์วันที่ เช่น ออบเจ็กต์ datetime คุณจะไม่สามารถใช้ฟังก์ชัน strftime() เพื่อจัดรูปแบบเป็นสตริงได้ คุณต้องแปลงออบเจกต์วันที่เป็นสตริงก่อนจึงจะใช้ฟังก์ชัน strftime()

Yes, Python's datetime module includes the strftime() method which can be used to format date objects.

1. นำเข้า datetime: บรรทัดนี้นำเข้าโมดูล datetime จาก Python ซึ่งมีฟังก์ชันที่หลากหลายสำหรับการทำงานกับวันที่และเวลา

2. today = datetime.date.today(): บรรทัดนี้สร้างวัตถุวันที่เรียกว่า 'วันนี้' ที่เก็บวันที่ปัจจุบันตามนาฬิการะบบของคอมพิวเตอร์

3. print(today.strftime('%d %b, %Y')): บรรทัดนี้ใช้เมธอด strftime() เพื่อจัดรูปแบบวัตถุวันที่ 'วันนี้' เป็นสตริงที่มีรูปแบบที่ระบุ ('%d %b, %Y'). ผลลัพธ์จะเป็นสตริงที่แสดงวันที่ของวันนี้ในรูปแบบนี้ (เช่น “01 ม.ค. 2021”)

ฟังก์ชัน strftime()

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

วิธีทำงานกับตัวแปร datetime ใน Python

การทำงานกับตัวแปร datetime ใน Python นั้นค่อนข้างตรงไปตรงมา ไลบรารีหลักที่ใช้เพื่อจุดประสงค์นี้คือโมดูล datetime ซึ่งมีคลาสและฟังก์ชันจำนวนหนึ่งเพื่อช่วยคุณจัดการวันที่และเวลา

คลาสที่ใช้บ่อยที่สุดในโมดูล datetime คือคลาส datetime ซึ่งแสดงถึงจุดเดียวในเวลา คลาสนี้มีหลายวิธีที่สามารถใช้เพื่อจัดการกับค่าวันที่และเวลา เช่น การบวกหรือลบวัน ชั่วโมง นาที ฯลฯ จากวันที่หรือเวลาที่กำหนด

อีกคลาสที่มีประโยชน์คือคลาส timedelta ซึ่งแสดงถึงระยะเวลา (เช่น 1 วัน) สามารถใช้เพื่อเพิ่มหรือลบเดลต้าเวลาจากค่าวันที่หรือเวลาที่กำหนด

สามารถใช้เมธอด strftime() เพื่อแปลงออบเจกต์วันที่และเวลาเป็นการแสดงสตริงของค่าวันที่/เวลานั้น (เช่น “2020-01-01 12:00:00”) ในทำนองเดียวกัน สามารถใช้เมธอด strptime() เพื่อแปลงสตริงเป็นออบเจกต์วันที่เวลา (เช่น “2020-01-01 12:00:00” -> ออบเจ็กต์วันที่เวลา)

สุดท้ายนี้ ยังมีฟังก์ชันที่มีประโยชน์อื่นๆ อีกหลายอย่างในโมดูล datetime ที่สามารถช่วยให้คุณทำงานกับวันที่และเวลาได้ง่ายขึ้น (เช่น utcnow(), now(), today() เป็นต้น)

กระทู้ที่เกี่ยวข้อง:

แสดงความคิดเห็น