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

โปรแกรม Python สร้าง Lap Timer (นับเวลารอบ)

ภาพรวม

สร้างจับเวลารอบ (lap timer) แบบโต้ตอบในคอนโซล โดยกด Enter เพื่อนับรอบ และ Ctrl+C เพื่อหยุด

ตัวอย่างโค้ด

import time

start_time = time.time()
end_time = start_time
lap_num = 1

print("กด ENTER เพื่อนับรอบ\nกด Ctrl+C เพื่อหยุด")

try:
    while True:
        input()  # รอผู้ใช้กด Enter
        lap_time = round(time.time() - end_time, 2)
        total_time = round(time.time() - start_time, 2)
        
        print(f"รอบที่: {lap_num}")
        print(f"เวลาสะสม: {total_time} วินาที")
        print(f"เวลารอบ: {lap_time} วินาที")
        print("*" * 20)
        
        end_time = time.time()
        lap_num += 1
        
except KeyboardInterrupt:
    print("\nจบโปรแกรม!")

ผลลัพธ์ตัวอย่าง

กด ENTER เพื่อนับรอบ
กด Ctrl+C เพื่อหยุด
รอบที่: 1
เวลาสะสม: 1.77 วินาที
เวลารอบ: 1.77 วินาที
********************
รอบที่: 2
เวลาสะสม: 3.52 วินาที
เวลารอบ: 1.75 วินาที
********************

จบโปรแกรม!

คำอธิบาย

  • time.time() ส่งคืนเวลาปัจจุบันเป็น timestamp (float)
  • start_time เก็บเวลาเริ่มต้นโปรแกรม
  • end_time เก็บเวลาจบรอบก่อนหน้า (อัปเดตทุกรอบ)
  • ใช้ try-except จับ KeyboardInterrupt (Ctrl+C) เพื่อออกจากลูปอย่างเป็นระบบ

การปรับปรุงที่เป็นไปได้

  • เพิ่มการบันทึกลงไฟล์ CSV
  • เพิ่ม GUI ด้วย tkinter
  • รองรับการรีเซ็ตหรือลบรอบล่าสุด