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 với Module trong Python

Hãy viết lại chương trình quản lý sinh viên bằng cách sử dụng Module trong Python. Yêu cầu của bài toán thì tương tự, chỉ là phải sử dụng cấu trúc module để thiết kế chương trình.

Bài giải

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

Trước tiên bạn hãy quay lại bài viết mà mình đã gắn ở đề bài để xem yêu cầu cũng như bài giải nhé. Sau đó thực hiện theo các bước như sau.

Bước 1: Tạo một package tên là QLSV.

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.

Bước 2: Tạo một module student.py nằm trong package QLSV.

Bước 3: Tạo một module data.py nằm trong package QLSV.

Lúc này cấu trúc thư mục sẽ như sau:

cau truc module JPG

Theo như trong hình thì:

  • File main.py là file chính của chương trình.
  • QLSV là package chứa toàn bộ dữ liệu và thư viện xử lý cho ứng dụng.
    • data.py là module khai báo những biến lưu trữ dữ liệu chính. Như trong ví dụ này thì ta chỉ lưu danh sách sinh viên.
    • student.py là thư viện xử lý các thao tác liên quan đến sinh viên.

Bước 4: Mở file data.py lên và nhập đoạn code sau:

# Biến lưu trữ danh sách sinh viên
listStudents = []

Bước 5: Mở file student.py lên và nhập vào các đoạn code sau.

# Import thư viện chứa data
import QLSV.data as d

def addStudent():
    """Hàm thêm một sinh viên"""
    print("*** THÊM SINH VIÊN ***")

    # 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
    d.listStudents.append(infor)


def findStudent(id):
    """Hàm tìm một sinh viên"""
    for i in range(0, len(d.listStudents)):
        if d.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, d.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()

    student = findStudent(id)

    if student != False:
        d.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 ***")
    for i in range(0, len(d.listStudents)):
        print("[",d.listStudents[i]['id'],"]", "[",d.listStudents[i]['name'],"]",)

def editStudent():
    """Hàm sửa sinh viên"""
    print("*** SỬA THÔNG TIN SINH VIÊN ***")
    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
        d.listStudents[student[0]] = student[1]

So sánh với ví dụ trước thì mình đã thay thế biến listStudents thành d.listStudents bởi vì nó đã được di chuyển sang module data.py.

Bước 6: Mở file main.py lên và nhập vào chương trình chính.

# HỌC PYTHON TAI FREETUTS.NET
# AUTHOR: CƯỜNG NGUYỄN

# Import thư viện student
import QLSV.student as s

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

while action >= 0:
    if action == 1:
        s.addStudent()
    elif action == 2:
        s.deleteStudent()
    elif action == 3:
        s.editStudent()
    elif action == 4:
        s.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

Chạy file main.py thì bạn thấy kết quả không khác gì bài trước.

chuong trinh quan ly sinh vien python JPG

Danh sách bài tập

Cùng chuyên mục:

Hàm Dictionary clear() trong Python

Hàm Dictionary clear() trong Python

Cách dùng hàm Dictionary clear() trong Python

Hàm Dictionary copy() trong Python

Hàm Dictionary copy() trong Python

Cách dùng hàm Dictionary copy() trong Python

Hàm Dictionary fromkeys() trong Python

Hàm Dictionary fromkeys() trong Python

Cách dùng hàm Dictionary fromkeys() trong Python

Hàm Dictionary get() trong Python

Hàm Dictionary get() trong Python

Cách dùng hàm Dictionary get() trong Python

Hàm Dictionary items() trong Python

Hàm Dictionary items() trong Python

Cách dùng hàm Dictionary items() trong Python

Hàm Dictionary keys() trong Python

Hàm Dictionary keys() trong Python

Cách dùng hàm Dictionary keys() trong Python

Hàm List append() trong Python

Hàm List append() trong Python

Cách dùng hàm List append() trong Python

Hàm List extend() trong Python

Hàm List extend() trong Python

Cách dùng hàm List extend() trong Python

Hàm List insert() trong Python

Hàm List insert() trong Python

Cách dùng hàm List insert() trong Python

Hàm List remove() trong Python

Hàm List remove() trong Python

Cách dùng hàm List remove() trong Python

Hàm List index() trong Python

Hàm List index() trong Python

Cách dùng hàm List index() trong Python

Hàm List count() trong Python

Hàm List count() trong Python

Cách dùng hàm List count() trong Python

Hàm List pop() trong Python

Hàm List pop() trong Python

Cách dùng hàm List pop() trong Python

Hàm List reverse() trong Python

Hàm List reverse() trong Python

Cách dùng hàm List reverse() trong Python

Hàm List sort() trong Python

Hàm List sort() trong Python

Cách dùng hàm List sort() trong Python

Hàm List copy() trong Python

Hàm List copy() trong Python

Cách dùng hàm List copy() trong Python

Hàm List clear() trong Python

Hàm List clear() trong Python

Cách dùng hàm List clear() trong Python

Hàm Set remove() trong Python

Hàm Set remove() trong Python

Cách dùng hàm Set remove() trong Python

Hàm Set add() trong Python

Hàm Set add() trong Python

Cách dùng hàm Set add() trong Python

Hàm Set copy() trong Python

Hàm Set copy() trong Python

Cách dùng hàm Set copy() trong Python

Top