INTRODUCTION
FLOW CONTROL
FUNCTIONS
DATATYPES
OBJECT & CLASS
ADVANCED TOPICS
BỔ SUNG
PYTHON CĂN BẢN
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
MỚI CẬP NHẬT

Chương trình quản lý sinh viên Python lưu mảng và dictionary

Hãy viết chương trình quản lý sinh viên bằng Python, gồm các chức năng chính như sau:

  • Khởi đầu là danh sách sinh viên rỗng.
  • Thông tin lưu trữ gồm mã sinh viên và tên sinh viên
  • Cho phép người dùng chọn chức năng như sau:
    • 1: Thêm sinh viên
    • 2: Xóa sinh viên
    • 3: Sửa sinh viên
    • 4: Xem danh sách sinh viên

test php

Bài giải

-------------------- ######## --------------------

Để giải bài này trong Python thì ta sử dụng mảng để lưu trữ danh sách sinh viên, và dictionary trong Python để lưu trữ thông tin cho mỗi sinh viên.

test php

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Mỗi khi người dùng thực hiện xong một thao tác thì sẽ hỏi họ chọn chức năng, nếu muốn thoát khỏi chương trình thì nhập "exit".

Cấu trúc lưu trữ sinh viên:

infor = {
    'id': '',
    'name': '' 
}

Bài giải chi tiết:

Bài viết này được đăng tại [free tuts .net]

# Học Python tại Freetuts.net
# Author: Cường Nguyễn
# Link https://freetuts.net/ref/chuong-trinh-quan-ly-sinh-vien-python-421.html

print("Chương trình quản lý sinh viên Python")

def addStudent():
    """Hàm thêm một sinh viên"""

    print("*** THÊM SINH VIÊN ***")

    # Danh sách sinh viên
    global listStudents

    # Cấu trúc lưu trữ một sinh viên
    infor = {
        'id' : '',
        'name' : ''
    }

    # Nhập ID, có kiểm tra trùng ID thì nhập lại
    print("Nhập ID sinh viên:")
    id = input()

    while True:
        student = findStudent(id)
        if student != False:
            print("ID này đã tồn tại, vui lòng nhập lại:")
            id = input()
        else:
            break

    infor['id'] = id

    # Nhập tên
    print("Nhập tên sinh viên:")
    infor['name'] = input()

    # Lưu vào danh sách sv
    listStudents.append(infor)


def findStudent(id):
    """Hàm tìm một sinh viên"""
    global listStudents
    for i in range(0, len(listStudents)):
        if listStudents[i]['id'] == id:
            # Trả về mảng gồm 2 phần tử,
            # 0 là vị trí tìm thấy và 1 là dữ liệu
            return [i, listStudents[i]]
    return False

def deleteStudent():
    """Hàm xóa sih viên"""
    print("*** XÓA SINH VIÊN ***")
    print("Nhập ID sinh viên cần xóa:")
    id = input()

    global listStudents
    student = findStudent(id)

    if student != False:
        listStudents.remove(student[1])
        print("Xóa sinh viên thành công")
    else :
        print("Không tìm thấy sinh viên cần xóa")

def showStudents():
    """Hàm hiển thị danh sách sv"""
    print("*** DANH SÁCH SINH VIÊN HIỆN TẠI ***")
    global listStudents
    for i in range(0, len(listStudents)):
        print("[",listStudents[i]['id'],"]", "[",listStudents[i]['name'],"]",)

def editStudent():
    """Hàm sửa sinh viên"""
    print("*** SỬA THÔNG TIN SINH VIÊN ***")
    global listStudents
    print("Nhập ID sinh viên cần sửa")
    id = input()
    student = findStudent(id)
    if student == False:
        print("Không tìm thấy sinh viên ", id)
    else :
        print("Nhập tên sinh viên")
        name = input()
        student[1]['name'] = name
        listStudents[student[0]] = student[1]

# CHƯƠNG TRÌNH CHÍNH
listStudents = []
action = 0

while action >= 0:
    if action == 1:
        addStudent()
    elif action == 2:
        deleteStudent()
    elif action == 3:
        editStudent()
    elif action == 4:
        showStudents()

    print("Chọn chức năng muốn thực hiện:")
    print("Nhập 1: Thêm sinh viên")
    print("Nhập 2: Xóa sinh viên")
    print("Nhập 3: Sửa sinh viên")
    print("Nhập 4: Xem danh sách sinh viên")
    print("Nhập 0: Thoát khỏi chương trình")
    action = int(input())
    if action == 0:
        break

Kết quả:

chuong trinh quan ly sinh vien python JPG

Câu hỏi thường gặp liên quan:

Cùng chuyên mục:

Phạm vi số float của Python

Phạm vi số float của Python

Bài tập Python : Pandas trong Python

Bài tập Python : Pandas trong Python

Hướng dẫn kết nối Python PostgreSQL bằng Psycopg2

Hướng dẫn kết nối Python PostgreSQL bằng Psycopg2

Kết nối cơ sở dữ liệu MySQL Python

Kết nối cơ sở dữ liệu MySQL Python

Bài tập Python: Lập trình cơ sở dữ liệu trong Python

Bài tập Python: Lập trình cơ sở dữ liệu trong Python

Tạo số ngẫu nhiên trong một phạm vi bằng Python

Tạo số ngẫu nhiên trong một phạm vi bằng Python

Bài tập Python : Tạo dữ liệu ngẫu nhiên trong Python

Bài tập Python : Tạo dữ liệu ngẫu nhiên trong Python

Bài tập Python : Matplotlib trong Python

Bài tập Python : Matplotlib trong Python

Bài tập Python: NumPy trong Python

Bài tập Python: NumPy trong Python

Bài tập Python: JSON trong Python

Bài tập Python: JSON trong Python

Bài tập Python: Lập trình hướng đối tượng (OOP) trong Python

Bài tập Python: Lập trình hướng đối tượng (OOP) trong Python

TimeDelta trong Python

TimeDelta trong Python

Chuyển chuỗi Python thành DateTime trong Python

Chuyển chuỗi Python thành DateTime trong Python

Bài tập Python: DateTime trong Python

Bài tập Python: DateTime trong Python

Bài tập Python: Tuple trong Python

Bài tập Python: Tuple trong Python

Bài tập Python: Set trong Python

Bài tập Python: Set trong Python

Bài tập Python: Dictionary trong Python

Bài tập Python: Dictionary trong Python

Bài tập Python: List trong Python

Bài tập Python: List trong Python

Bài tập Python: Cấu trúc dữ liệu trong Python

Bài tập Python: Cấu trúc dữ liệu trong Python

Bài tập Python: Chuỗi trong Python

Bài tập Python: Chuỗi trong Python

Top