เขียนภาษา Python ต้องการใช้คำสั่ง isnumeric เพื่อเช็คว่าข้อมูลดังกล่าวเป็นตัวเลข (Int) หรือเป็นข้อความ (String) แต่พอรันแล้วขึ้น Error ว่า AttributeError: int object has no attribute isnumeric แบบนี้ต้องแก้ไขอย่างไร
v = [9, 'a', 10]
for i in range( len(v) ):
if v[i].isnumeric() :
print(v[i], 'เป็นตัวเลข')
else:
print(v[i], 'ไม่ใช่ตัวเลข')
วิธีแก้ไข
คำสั่ง isnumeric() เป็นฟังก์ชันสำหรับเช็คข้อมูลจาก string ว่าเป็นตัวเลขหรือไม่ ไม่รองรับการเช็คข้อมูลจากตัวเลข เปลี่ยน 9, 'a', 10 ใน list ให้เป็น string เช่น ‘9’, 'a', ‘10’ และลองรันดูผลลัพธ์ใหม่อีกครั้ง
v = ['9', 'a', '10']
for i in range( len(v) ):
if v[i].isnumeric() :
print(v[i], 'เป็นตัวเลข')
else:
print(v[i], 'ไม่ใช่ตัวเลข')
ผลลัพธ์
9 เป็นตัวเลข
a ไม่ใช่ตัวเลข
10 เป็นตัวเลข