29.4. Chương trình sau có lỗi không? Nếu có thì lỗi thuộc loại nào?A = [1,2,3]for i in...

Câu hỏi:

29.4. Chương trình sau có lỗi không? Nếu có thì lỗi thuộc loại nào?

A = [1,2,3]

for i in range(4):

       print(A[i])

Câu trả lời:
Người trả lời: GV. Đỗ Thị Hạnh
Cách làm:

1. Duyệt qua từng phần tử trong list A và in ra giá trị tại vị trí đó.
2. Kiểm tra liệu chỉ số của phần tử đó có vượt khỏi số lượng phần tử trong list hay không.

Câu trả lời:

Có lỗi. Đó là lỗi ngoại lệ vì chỉ số i sẽ vượt qua giới hạn của list A (từ 0 đến len(A)-1). Trong trường hợp này, range(4) sẽ tạo ra dãy số từ 0 đến 3, nhưng list A chỉ có 3 phần tử. Khi i đạt giá trị 3 và thử truy cập vào phần tử A[3] (phần tử thứ tư), sẽ xảy ra lỗi IndexError. Để khắc phục lỗi này, có thể thay đổi range(4) thành range(len(A)) để đảm bảo không vượt quá chỉ số của list A.
Câu hỏi liên quan:
Bình luận (0)
Nhấn vào đây để đánh giá
Thông tin người gửi
0.05326 sec| 2205.414 kb