ในบทช่วยสอนนี้ เราจะเขียนโปรแกรมที่บวกตัวเลขทั้งหมดจาก List List อาจมีตัวเลขในรูปแบบ สตริง (string) หรือ จำนวนเต็ม (integer) ดูตัวอย่าง
อินพุท
random_list = [1, '10', 'tutorialspoint', '2020', 'tutorialspoint@2020', 2020]
เอาต์พุท
4051
ทำตามขั้นตอนด้านล่างเพื่อเขียนโปรแกรม
- เริ่มต้น List
- เริ่มต้นตัวแปร total ด้วย 0
- วนลูปผ่าน List
- ถ้าสมาชิกเป็น int ให้บวกเข้า total โดยตรวจสอบ 2 เงื่อนไข:
- เป็น int -> ตรวจสอบด้วย type()
- เป็นตัวเลขในรูปสตริง -> ตรวจสอบด้วยเมธอด isdigit()
- พิมพ์ total
ตัวอย่าง
# เริ่มต้น list
random_list = [1, '10', 'tutorialspoint', '2020', 'tutorialspoint@2020', 2020]
# เริ่มต้นตัวแปร total
total = 0
# วนลูปผ่าน list
for element in random_list:
# ตรวจสอบว่าเป็นตัวเลขหรือไม่
if isinstance(element, int) or element.isdigit():
# บวกสมาชิกเข้า total
total += int(element)
# พิมพ์ total
print(total)
ผลลัพธ์
การรันโค้ดข้างต้นจะได้ผลลัพธ์ดังนี้
4051
สรุป
ใช้ isinstance() ตรวจ int และ isdigit() ตรวจสตริงตัวเลข แล้วบวกรวมกัน หากมีข้อสงสัย กรุณาแจ้งในส่วนความคิดเห็น