python编程源码

欢迎进入python世界

你好!通过仔细阅读本文,你可以认识到通过python语言开发学生成绩管理系统的原貌。
在这里插入图片描述

第一部分:系统介绍

一个带有登录功能的学生管理系统,具备增删改查的功能。
要点1:面对对象思想
要点2:利用tkinter库进行制作,利用.txt文件进行存储

第二部分:源代码

students.txt main.py Login.py db.py MenuPage.py view.py

第三部分:代码展示&分析

1.students.txt:存储数据
2.main.py:主文件

"""
Tkinter 是 Python 的标准 GUI 库。Python 使用 Tkinter 可以快速的创建 GUI 应用程序。
由于 Tkinter 是内置到 python 的安装包中、只要安装好 Python 之后就能 import Tkinter 库、而且 IDLE 也是用 Tkinter 编写而成、对于简单的图形界面 Tkinter 还是能应付自如。
"""
from tkinter import *
# from Tkinter的意思就是导入Tkinter,它是一个库,也可以简单称之为类;import *的意思是导入库中所有的类,函数,变量等等信息,这样在调用相关函数或者变量的时候,就不用加Tkinter前缀了。
from Login import *   #从登录导入
import tkinter as tk  # 在代码里面导入库,起一个别名,以后代码里面就用这个别名

root = tk.Tk() # 这个库里面有Tk()这个方法,这个方法的作用就是创建一个窗口
root.title('欢迎进入python学生成绩管理系统')
LoginPage(root)
root.mainloop()# 加上这一句,就可以看见窗口了

3.Login.py:登录界面代码

from tkinter import *
from tkinter.messagebox import *
from MenuPage import *


class LoginPage(object):
    def __init__(self, master=None):
        self.root = master  # 定义内部变量root
        self.root.geometry('%dx%d' % (600, 360))  # 设置窗口大小
        self.username = StringVar()
        self.password = StringVar()
        self.createPage()

    def createPage(self):
        self.page = Frame(self.root)  # 创建Frame
        self.page.pack()
        Label(self.page).grid(row=0, stick=W)
        Label(self.page, text='账户: ').grid(row=1, stick=W, pady=50)
        Entry(self.page, textvariable=self.username).grid(row=1, column=1, stick=E)
        Label(self.page, text='密码: ').grid(row=2, stick=W, pady=50)
        Entry(self.page, textvariable=self.password, show='*').grid(row=2, column=1, stick=E)
        Button(self.page, text='登陆', command=self.loginCheck).grid(row=3, stick=W, pady=50)
        Button(self.page, text='退出', command=self.page.quit).grid(row=3, column=1, stick=E)

    def loginCheck(self):
        name = self.username.get()
        password = self.password.get()
        if name == '123' and password == '123':
            self.page.destroy()
            MenuPage(self.root)
        else:
            showinfo(title='错误', message='账号或密码错误!')

4.db.py

import json


class StudentDB(object):
    def __init__(self):
        self.students = []
        self._load_students_data()

    def insert(self, student):
        self.students.append(student)
        print(self.students)

    def all(self):
        return self.students

    def delete_by_name(self, name):  # 删除数据
        for student in self.students:
            if name == student["name"]:
                self.students.remove(student)
                break
        else:
            return False
        return True

    # 查询
    def search_by_name(self, name):
        for student in self.students:
            if name == student["name"]:
                return student  # 姓名+成绩
        else:
            return False

    # 修改
    def update(self, stu):  # 修改数据
        name = stu["name"]
        for student in self.students:
            if n
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值