แบบฝึกหัด Python สำหรับผู้เริ่มต้น

Sum the Digits of a Number in Python

12345 → 1 + 2 + 3 + 4 + 5 = 15. Do it by turning the number into text, or with % and //.

  • ระดับเริ่มต้น
  • อ่าน 2 นาที
  • ตัวอย่างที่รันได้ 1 ตัวอย่าง
สิ่งที่คุณจะได้เรียนรู้
  • Turning a number into its digits
  • sum() with a generator
  • The arithmetic version with % 10 and // 10
12345
11
23
36
410
515
The small numbers show the running total: sum = 15.

Visit every digit

การบวกเลขโดดของตัวเลขต้องแยกแต่ละหลักออกมา ใน Python วิธีง่าย ๆ คือแปลงตัวเลขเป็นสตริง แต่ละหลักจะกลายเป็นตัวอักษรที่วนลูปผ่านได้

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

  1. str(12345) gives "12345", and each character is one digit.
  2. sum(int(d) for d in str(n)) adds them.
  3. Without strings: n % 10 is the last digit and n // 10 drops it.

ใช้เมื่อไร?

  • เรียนรู้ไวยากรณ์และแนวคิดพื้นฐานของ Python ผ่านตัวอย่างสั้น ๆ ที่เข้าใจง่าย
  • สร้างพื้นฐานที่มั่นคงก่อนไปต่อกับโจทย์ที่ซับซ้อนขึ้น
  • รันโค้ดในเบราว์เซอร์ได้ทันทีโดยไม่ต้องติดตั้ง Python บนเครื่อง

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

รันโค้ด →
main.py
number = 12345
# Convert each digit character back to an integer.
total = sum(int(digit) for digit in str(abs(number)))
print(f"sum={total}")
สร้างปุ่ม Run สำหรับตัวอย่างนี้

ผลลัพธ์จากการรัน

sum=15

อธิบายโค้ด

นิพจน์ str(abs(number)) แปลงตัวเลขเป็นสตริง "12345" โดย abs() ลบเครื่องหมายลบถ้าเป็นจำนวนติดลบ นิพจน์ int(digit) for digit in ... แปลงแต่ละตัวอักษรกลับเป็นตัวเลข แล้ว sum() บวกทั้งหมด ผลลัพธ์คือ 1 + 2 + 3 + 4 + 5 = 15

เปลี่ยนค่าและรันโปรแกรมด้วย คอมไพเลอร์ Python ออนไลน์ของ CodeUtility โดยไม่ต้องติดตั้ง Python

แบบฝึกหัดเพิ่มเติม

ลองแก้โค้ดตามคำแนะนำด้านล่าง การเปลี่ยนโค้ดแล้วดูผลลัพธ์จะช่วยให้เข้าใจบทเรียนได้ดีกว่าการอ่านอย่างเดียวมาก

  1. เปลี่ยนข้อมูลอินพุตแล้วทายผลลัพธ์ก่อนรัน
  2. เพิ่มการตรวจสอบข้อมูลว่างหรือข้อมูลที่ไม่ถูกต้อง
  3. แยกขั้นตอนการประมวลผลเป็นฟังก์ชันและทดสอบกับข้อมูลหลายชุด
รันในคอมไพเลอร์ Python →

ฝึกด้วยโจทย์

ใช้สิ่งที่เรียนในบทนี้แก้ปัญหาจริง ทุกโจทย์รันในเบราว์เซอร์ พร้อมการทดสอบทันทีและรีวิวจาก AI

โจทย์ทั้งหมด