Python ตอนที่ 48 ตรวจสอบว่า String เป็นตัวเลขทั้งหมดหรือไม่ ด้วยเมธอด isdecimal()

เมธอด isdecimal() เป็นเมธอดของสตริง ใช้สำหรับตรวจสอบว่า อักขระในสตริงเป็นตัวเลขทั้งหมดหรือไม่ โดยจะคืนค่า True หากอักขระทั้งหมดในสตริงเป็นตัวเลข ถ้าไม่ใช่จะคืนค่าเป็น False

เมธอด isdecimal() เป็นเมธอดที่ไม่มีพารามิเตอร์ มีรูปแบบการใช้งานดังนี้

string.isdecimal()

ตัวอย่างการใช้งานเมธอด isdecimal()

mytext2 = "Python"
mytext3 = "1234"
mytext4 = "Python2020"

x = mytext2.isdecimal()   # False
y = mytext3.isdecimal()   # True
z = mytext4.isdecimal()   # False

print(x)
print(y)
print(z)

จากโค้ดตัวอย่าง เฉพาะ “1234” เท่านั้นที่เป็น Decimal นอกนั้นไม่ใช่

เมธอด isdecimal() ใช้ตรวจสอบออบเจ็กต์ unicode ได้ด้วย ดังตัวอย่าง

x = "\u0033" # รหัส unicode ของเลข 3
y = "\u0047" # รหัส unicode ของตัวอักษร G

print(x.isdecimal())	# True
print(y.isdecimal())	# False

จาดโค้ดด้านบน เมื่อตรวจสอบตัวแปร x ด้วยเมธอด isdecimal() จะได้ค่าเป็น True เพราะ “\u0033” เป็นรหัส unicode ของเลข 3

แต่เมื่อตรวจสอบตัวแปร y ด้วยเมธอด isdecimal() จะได้ค่าเป็น False เพราะ “\u0047” เป็นรหัส unicode ของตัวอักษร G