Hỏi cách sử dụng mảng liên quan đến thực thể

Làm sao để lấy 1 giá trị từ thực thể có trong mảng để so sánh?
Ví dụ: Mình muốn so sánh id mà mình nhập từ bàn phím có tồn tại trong mảng hay chưa?

def nhap():
        danhSachSV=[]
        while True:
            #Nhập mã sinh viên từ bàn phím hoặc nhấn 0 để thoát
            id = int(input('Nhập mã sinh viên hoặc nhập 0 để thoát:'))
            if id == 0:
                break
            '''
            for i in danhSachSV:
                if id == danhSachSV[i]
                    print('Mã sinh viên này đã tồn tại')
                    print('Vui lòng nhập lại mã khác')
                    continue
                break
            '''
            name = input('Nhập tên sinh viên:')

            while True:
                score = float(input('Nhập điểm sinh viên:'))
                if 0 <= score <=10:
                    break
                print('Khoảng điểm từ 0 đến 10')
                print('Vui lòng nhập điểm lại')

            levels = (0, 3.5, 5, 6.5, 8)
            ratings =('Kém', 'Yếu', 'Trung bình', 'Khá', 'Giỏi')
            for i in range (len(levels)):
                if score >= levels[i]:
                    rating = ratings[i]
            danhSachSV.append({
                'Mã:':id,
                'Tên:':name,
                'Điểm':score,
                'Học lực:':rating
            })
        return danhSachSV

Bạn biết list không? Bạn biết thêm/lấy phần tử nào dó từ list không?
Bạn tạo được thực thể có thuộc tính như mô tả chưa? Bạn lấy được thuộc tính từ thực thể đó chưa?
Nếu bạn biết thì hãy show code ra, sẽ có người giúp bạn kết hợp 4 đoạn code đó lại

5 Likes

Đã có danhsachSV rồi, lúc nhập id thì duyệt và kiểm tra xem danhsachSV đã có id đó chưa.
Cũng giống quá trình kiểm tra điểm hợp lệ mà bạn đã viết.

id = input...
...
idExist = False
while True
    for i in dsSV
        if i['Mã:'] == id
            idExist = true
            break
    if idExist
        # nhập lại
    else
        break
1 Like

Output sẽ ra kiểu như vầy
Screen Shot 2021-10-19 at 09.21.49

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