Giúp em về lỗi list

đề : Tạo một list có độ dài tùy ý chứa các phần tử tùy ý. Dùng vòng lặp for xóa các phần tử lớn hơn A trong list, với A là một số thực nhập bởi người dùng.

list=[1,15,12,14,32,26,64,147,258]

A=float(input('moi nhap vao so A :'))

for i in list:

    if i>=A:

        list.remove(i)        

print(list)

thì kết quả ra ntn ạ [1, 15, 12, 14, 32, 26, 147]

còn nếu viết

list=[1,15,12,14,32,26,64,147,258]

 A=float(input('moi nhap vao so A :'))

for i in list:

     if i>=A:

           del list[i]

print(list)

thì lại báo lỗi là list assignment index out of range

ae ai biết giúp e với ạ,em xin cảm ơn ạ !

Không sửa đối tượng đang for...in nhé, nếu là hash thì sẽ văng lỗi luôn đó. Bài này đúng ra dùng comprehension.

Bài này dùng for...in thì chỉ có copy ra mảng mới chứ cấu trúc này ko cho lùi.

6 Likes

em cảm ơn anh nhiều ạ

1 Like

Bài làm:

1 Like

em đã sửa lại yêu cầu theo cách như này và nộp rồi ạ
nhưng em cảm ơn anh vì đã quan tâm đến vấn đề của em !

1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?