0Pricing
Python Academy · บทเรียน

Timedelta และการคำนวณ

คำนวณความแตกต่างระหว่างวันที่

Timedelta และการคำนวณ เป็นบทเรียน Python Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Python Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Python Academy มีบทเรียนทั้งหมด 4 บทเรียน

ช่วงเวลาต่างคืออะไร

timedelta ใช้แทนระยะเวลา ซึ่งเป็นช่วงห่างระหว่างจุดเวลาสองจุด โดยเกิดจากการลบวันที่หรือ datetime หนึ่งออกจากอีกค่าหนึ่ง

นำเข้าโมดูลด้วย from datetime import timedelta

from datetime import timedelta
gap = timedelta(days=3)
print(gap)

การสร้างระยะเวลา

สร้าง timedelta ด้วยอาร์กิวเมนต์ที่ระบุชื่อ เช่น days, hours, minutes และ seconds ไพธอนจะปรับค่าเหล่านี้ให้อยู่ในรูปวัน วินาที และไมโครวินาที

from datetime import timedelta
d = timedelta(days=1, hours=6, minutes=30)
print(d)

การลบวันที่สองวัน

การลบ date หนึ่งออกจากอีกค่าหนึ่งจะให้ผลลัพธ์เป็น timedelta วิธีนี้ใช้วัดว่าระหว่างสองวันมีระยะห่างกันเท่าใด

from datetime import date
start = date(2026, 1, 1)
end = date(2026, 5, 30)
diff = end - start
print(diff)

จำนวนวันระหว่างวันที่

แอตทริบิวต์ .days ของ timedelta จะให้จำนวนวันเต็มเป็นจำนวนเต็ม เหมาะอย่างยิ่งสำหรับตอบคำถามว่า “เหลืออีกกี่วันจะถึง X?”

from datetime import date
new_year = date(2027, 1, 1)
today = date(2026, 5, 30)
print('Days left:', (new_year - today).days)

การเพิ่มเวลาให้วันที่

เพิ่ม timedelta ให้กับ date หรือ datetime เพื่อเลื่อนไปข้างหน้าในเวลา หากลบออกจะเป็นการย้อนกลับไปในเวลา

from datetime import date, timedelta
today = date(2026, 5, 30)
in_two_weeks = today + timedelta(days=14)
print('In two weeks:', in_two_weeks)

ย้อนกลับไปในอดีต

การลบ timedelta จะเลื่อนวันที่ไปยังอดีต ในที่นี้ เราจะหาวันที่เมื่อหนึ่งสัปดาห์ก่อน

from datetime import date, timedelta
today = date(2026, 5, 30)
last_week = today - timedelta(weeks=1)
print('A week ago:', last_week)

จำนวนวินาทีทั้งหมดในระยะเวลา

เมธอด .total_seconds() จะคืนค่าระยะเวลาทั้งหมดเป็นเลขทศนิยมที่มีหน่วยเป็นวินาที เหมาะสำหรับการคำนวณเวลาอย่างแม่นยำ

from datetime import timedelta
d = timedelta(hours=2, minutes=30)
print('Total seconds:', d.total_seconds())

การคำนวณวันเวลา

กฎเดียวกันนี้ใช้กับอ็อบเจ็กต์ datetime ด้วย การบวกระยะเวลาจะเลื่อนทั้งวันที่และเวลาในนาฬิกาอย่างถูกต้อง โดยข้ามไปยังวันถัดไปเมื่อจำเป็น

from datetime import datetime, timedelta
start = datetime(2026, 5, 30, 23, 0)
later = start + timedelta(hours=3)
print(later)

การคูณระยะเวลา

สามารถคูณ timedelta ด้วยตัวเลขเพื่อปรับขนาดระยะเวลาได้ ทำให้คำนวณรอบการทำงานห้ารอบ รอบละสองสัปดาห์ได้ง่าย

from datetime import timedelta
sprint = timedelta(weeks=2)
five_sprints = sprint * 5
print(five_sprints)

การเปรียบเทียบระยะเวลา

สามารถเปรียบเทียบระยะเวลาต่าง ๆ ด้วย <, > และ == ซึ่งช่วยตรวจสอบได้ว่าช่วงเวลาหนึ่งยาวกว่าอีกช่วงเวลาหรือไม่

from datetime import timedelta
a = timedelta(hours=5)
b = timedelta(days=1)
print(a < b)
print(max(a, b))

การแยกวันและวินาที

timedelta จัดเก็บ .days และ .seconds แยกกัน แอตทริบิวต์ .seconds จะเก็บเฉพาะจำนวนวินาทีที่เหลืออยู่ภายในวันสุดท้าย (0 ถึง 86399) ไม่ใช่จำนวนทั้งหมด

from datetime import timedelta
d = timedelta(days=2, hours=3)
print('days:', d.days)
print('seconds:', d.seconds)

ตรวจสอบความเข้าใจ

การลบ date หนึ่งรายการออกจากอีกรายการจะคืนค่าอะไร

ทบทวน: Timedelta และการคำนวณ

ประเด็นสำคัญ:

  • timedelta(days=, hours=, ...) ใช้สร้างระยะเวลา
  • การลบวันที่หรือวันเวลาสองรายการจะคืนค่าเป็น timedelta
  • บวกหรือลบ timedelta เพื่อเลื่อนวันที่ไปข้างหน้าหรือย้อนกลับ
  • อ่านค่า .days หรือเรียกใช้ .total_seconds() เพื่อรับค่าเชิงตัวเลข และคูณระยะเวลาเพื่อปรับขนาด
from datetime import date, timedelta
today = date(2026, 5, 30)
print('In 100 days:', today + timedelta(days=100))

คำถามที่พบบ่อย

บทเรียน “Timedelta และการคำนวณ” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “Timedelta และการคำนวณ” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Python Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Python Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “Timedelta และการคำนวณ”

คำนวณความแตกต่างระหว่างวันที่ คุณปฏิบัติ Python Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Python Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Python Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน

บทเรียน “Timedelta และการคำนวณ” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Python Academy นี้ได้ไหม

ได้ บทเรียน Python Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. date, time, datetime
  2. Timedelta และการคำนวณ
  3. การจัดรูปแบบและการแยกวิเคราะห์
  4. เขตเวลาด้วย zoneinfo
← กลับไปที่ Python Academy