گام اول: آشنایی با پروژه سیستم مدیریت مدرسه
پروژه سیستم مدیریت مدرسه یکی از پروژههای جذاب و کاربردی است که میتوانید با زبان برنامهنویسی پایتون آن را بسازید. این سیستم میتواند به مدیران مدارس کمک کند تا اطلاعات دانشآموزان، معلمان، کلاسها و درسها را به صورت منظم و دقیق مدیریت کنند. در این پروژه، ما قصد داریم یک سیستم مدیریت مدرسه ساده بسازیم که بتواند عملیاتهای پایهای مانند افزودن، حذف و ویرایش اطلاعات دانشآموزان و معلمان را انجام دهد.
گام دوم: نصب و راهاندازی محیط برنامهنویسی
قبل از شروع برنامهنویسی، باید محیط برنامهنویسی خود را آماده کنید. برای این کار، به یک ویرایشگر متن یا یک محیط توسعه یکپارچه (IDE) مانند PyCharm یا Visual Studio Code نیاز دارید. اگر پایتون را روی کامپیوتر خود نصب نکردهاید، میتوانید آخرین نسخه آن را از سایت رسمی پایتون دانلود و نصب کنید.
گام سوم: طراحی پایگاه داده
برای ذخیرهسازی اطلاعات دانشآموزان و معلمان، به یک پایگاه داده نیاز داریم. در این پروژه، ما از یک پایگاه داده ساده به نام SQLite استفاده خواهیم کرد. SQLite یک پایگاه داده رابطهای است که به صورت فایلهای قابل حمل کار میکند و برای پروژههای کوچک و متوسط بسیار مناسب است.
import sqlite3
# اتصال به پایگاه داده
conn = sqlite3.connect('school.db')
# ایجاد یک cursor برای اجرای کوئریها
cursor = conn.cursor()
# ایجاد جدول دانشآموزان
cursor.execute('''
CREATE TABLE IF NOT EXISTS students (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL,
age INTEGER NOT NULL,
grade REAL NOT NULL
)
''')
# ایجاد جدول معلمان
cursor.execute('''
CREATE TABLE IF NOT EXISTS teachers (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL,
subject TEXT NOT NULL
)
''')
# ذخیره تغییرات
conn.commit()
# بستن اتصال
conn.close()
گام چهارم: افزودن دانشآموزان و معلمان
حالا که پایگاه داده ما آماده است، میتوانیم به افزودن دانشآموزان و معلمان بپردازیم. ما توابع جداگانهای برای افزودن دانشآموزان و معلمان خواهیم داشت.
import sqlite3
def add_student(name, age, grade):
conn = sqlite3.connect('school.db')
cursor = conn.cursor()
cursor.execute('INSERT INTO students (name, age, grade) VALUES (?, ?, ?)', (name, age, grade))
conn.commit()
conn.close()
def add_teacher(name, subject):
conn = sqlite3.connect('school.db')
cursor = conn.cursor()
cursor.execute('INSERT INTO teachers (name, subject) VALUES (?, ?)', (name, subject))
conn.commit()
conn.close()
# مثال: افزودن یک دانشآموز
add_student('محمد', 16, 11)
# مثال: افزودن یک معلم
add_teacher('استاد عباسی', 'ریاضی')
گام پنجم: نمایش اطلاعات دانشآموزان و معلمان
برای نمایش اطلاعات دانشآموزان و معلمان، میتوانیم توابع جداگانهای بنویسیم که اطلاعات را از پایگاه داده بخوانند و نمایش دهند.
import sqlite3
def display_students():
conn = sqlite3.connect('school.db')
cursor = conn.cursor()
cursor.execute('SELECT * FROM students')
students = cursor.fetchall()
for student in students:
print(f"ID: {student[0]}, نام: {student[1]}, سن: {student[2]}, نمره: {student[3]}")
conn.close()
def display_teachers():
conn = sqlite3.connect('school.db')
cursor = conn.cursor()
cursor.execute('SELECT * FROM teachers')
teachers = cursor.fetchall()
for teacher in teachers:
print(f"ID: {teacher[0]}, نام: {teacher[1]}, درس: {teacher[2]}")
conn.close()
# نمایش دانشآموزان
display_students()
# نمایش معلمان
display_teachers()
گام ششم: حذف دانشآموزان و معلمان
برای حذف دانشآموزان و معلمان، میتوانیم توابع جداگانهای بنویسیم که اطلاعات را از پایگاه داده حذف کنند.
import sqlite3
def delete_student(student_id):
conn = sqlite3.connect('school.db')
cursor = conn.cursor()
cursor.execute('DELETE FROM students WHERE id = ?', (student_id,))
conn.commit()
conn.close()
def delete_teacher(teacher_id):
conn = sqlite3.connect('school.db')
cursor = conn.cursor()
cursor.execute('DELETE FROM teachers WHERE id = ?', (teacher_id,))
conn.commit()
conn.close()
# مثال: حذف یک دانشآموز با ID 1
delete_student(1)
# مثال: حذف یک معلم با ID 1
delete_teacher(1)
گام هفتم: ویرایش اطلاعات دانشآموزان و معلمان
برای ویرایش اطلاعات دانشآموزان و معلمان، میتوانیم توابع جداگانهای بنویسیم که اطلاعات را در پایگاه داده بهروز کنند.
import sqlite3
def edit_student(student_id, name, age, grade):
conn = sqlite3.connect('school.db')
cursor = conn.cursor()
cursor.execute('UPDATE students SET name = ?, age = ?, grade = ? WHERE id = ?', (name, age, grade, student_id))
conn.commit()
conn.close()
def edit_teacher(teacher_id, name, subject):
conn = sqlite3.connect('school.db')
cursor = conn.cursor()
cursor.execute('UPDATE teachers SET name = ?, subject = ? WHERE id = ?', (name, subject, teacher_id))
conn.commit()
conn.close()
# مثال: ویرایش یک دانشآموز با ID 1
edit_student(1, 'محمد عباسی', 17, 12)
# مثال: ویرایش یک معلم با ID 1
edit_teacher(1, 'استاد عباسی', 'فیزیک')
نتیجهگیری
با این گامها، شما توانستید یک سیستم مدیریت مدرسه ساده را با زبان پایتون بسازید. این پروژه به شما کمک کرد تا مفاهیم پایهای برنامهنویسی، پایگاه داده و پروژههای عملی را بیاموزید. امیدوارم از این پروژه لذت برده باشید و بتوانید پروژههای مشابه را در آینده بسازید.
- مثالهای بیشتر تمرین کنید.
- به پروژههای مشابه علاقهمند شوید.
- همیشه از مستندات پایتون و منابع آموزشی استفاده کنید.
پروژههای عملی بهترین راه برای یادگیری هستند.