Devdit
 

int object has no attribute isnumeric วิธีแก้ไข

1.5K

เขียนภาษา 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 เป็นตัวเลข
เขียน 2 ปีที่แล้ว
ชอบ
ลิ้งก์
แชร์
Devdit มีช่อง YouTube แล้ว
เราสร้างวิดีโอเกี่ยวกับเทคโนโลยี ทำตามง่ายๆ