อยากจะดักค่า IndexError: list index out of range error ตอนเรียก list ที่มีจำนวนไม่เท่ากัน

แนะนำ สอบถาม ภาษา C สำหรับผู้เริ่มต้น ภาษา Java ภาษา Python

Moderator: mindphp, ผู้ดูแลกระดาน

ภาพประจำตัวสมาชิก
thatsawan
PHP VIP Members
PHP VIP Members
โพสต์: 9074
ลงทะเบียนเมื่อ: 31/03/2014 10:02 am
ติดต่อ:

อยากจะดักค่า IndexError: list index out of range error ตอนเรียก list ที่มีจำนวนไม่เท่ากัน

โพสต์โดย thatsawan » 31/08/2017 2:26 am

โค้ด: เลือกทั้งหมด

a = [1,2,3]


print a[0]
print a[1]
print a[2]
print a[3]

# if len(a[3]) < 1 :
#     print a[3]

# if a[3] != '':
#     print a


อยากทราบว่าเราจะเช็คเงื่อนไขถ้าเรียก index ที่ไม่มียุจริงได้ยังไงค่ะ
ทดลอง

โค้ด: เลือกทั้งหมด

# if len(a[3]) < 1 :

ไม่ได้
แบบนี้ก้อไม่ได้ค่ะ

โค้ด: เลือกทั้งหมด

 if a[3] != '':

ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 16312
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

Re: อยากจะดักค่า IndexError: list index out of range error ตอนเรียก list ที่มีจำนวนไม่เท่ากัน

โพสต์โดย mindphp » 31/08/2017 8:18 am

โค้ด: เลือกทั้งหมด

try:
    โค้ดที่ต้องการให้ทำงาน
except IndexError:
    กำหนดค่าใหม่ให้ตัวแปล
   


หรือ

len คือความยาวของตัวแปล

โค้ด: เลือกทั้งหมด

 if len(a[3]) > 1 :
     print a[3]
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: viewforum.php?f=29
รับอบรม และพัฒนาระบบ: viewtopic.php?f=6&t=2042

ภาพประจำตัวสมาชิก
thatsawan
PHP VIP Members
PHP VIP Members
โพสต์: 9074
ลงทะเบียนเมื่อ: 31/03/2014 10:02 am
ติดต่อ:

Re: อยากจะดักค่า IndexError: list index out of range error ตอนเรียก list ที่มีจำนวนไม่เท่ากัน

โพสต์โดย thatsawan » 31/08/2017 12:07 pm

mindphp เขียน:

โค้ด: เลือกทั้งหมด

try:
    โค้ดที่ต้องการให้ทำงาน
except IndexError:
    กำหนดค่าใหม่ให้ตัวแปล
   



ใช่้งานได้เเล้วค่ะ


ย้อนกลับไปยัง

ผู้ใช้งานขณะนี้

กำลังดูบอร์ดนี้: 4 และ บุคคลทั่วไป 0 ท่าน