基於python的學生資訊管理系統!聽說好多人的作業都是這個

爬遍天下無敵手發表於2020-12-28

完整程式碼

import pymysql
index='''
            +---------------------+
                    首頁
            歡迎來到學生資訊管理系統
            1.登陸
            2.註冊
            3.quit(按任意鍵退出)
            +---------------------+
            '''
login='''
            +---------------------+
                    登陸
            歡迎來到學生資訊管理系統
            請輸入使用者名稱和密碼
            +---------------------+
            '''
tishi='''
            歡迎 {} 來到教學管理系統
                請輸入您的操作
                    操作平臺
            +---------------------+
            1.查詢資訊
            2.修改資訊
            3.增加資訊
            4.刪除資訊
            5.quit(返回登陸頁面)
            +---------------------+
            '''
zhuce='''           
                            註冊
            +---------------------—----------------+
            學號    姓名     性別    出生日期     班級   
            +--------------------------------------+  
            '''

select_stu_mas='''
            +---------------------+
            1.查詢成績
            2.查詢本人資訊
            3.quit(任意鍵退出)
            +---------------------+
            '''
update_mas_dif='''
            +---------------------+
            '''
maseger_start='''
            +---------------------—--------------------------------------------+
            學號        姓名         性別          出生日期                班級   
            '''
maseger_stop='''
            +------------------------------------------------------------------+
            '''
maseger_degree_start='''
            +------------------------------------------------------------------+
            學號            課程號             成績
            '''
maseger_degree_stop='''
            +------------------------------------------------------------------+
            '''
def select_mas(user,cur):
    while True:
        try:
            action = input(select_stu_mas).strip()
            #查詢個人資訊
            if action == '2':
                sql = 'select * from student where sno="{}"'.format(user)
                #print(sql)
                cur.execute(sql)
                data=cur.fetchone()
                print(maseger_start)
                print(data)
                print(maseger_stop)
            #查詢成績:
            elif action=='1':
                sql = 'select * from score where sno="{}"'.format(user)
                cur.execute(sql)
                data = cur.fetchall()
                print(maseger_degree_start)
                for i in data:
                    print(i)
                print(maseger_degree_stop)
            else:
                print('            您已安全退出個人查詢頁面!')
                break
        except Exception as e:
            print(e)
def update_mas(user,cur):
    pass
def insert_mas(user,cur):
    pass
def delete_mas(user,cur):
    pass
def login_student(results,user_password):
    try:
        if results[0][0] and results[0][1]==user_password:
            #print(tishi.format(results[0][0]))
            return True
    except Exception as e:
        #print('            錯誤原因:',e)
        return False

def handle_mas(user,cur):
    while True:
        action = input(tishi.format(user)).strip()
        if action=='1':
            select_mas(user,cur)
        elif action=='2':
            update_mas(user)
        elif action=='3':
            insert_mas(user)
        elif action=='4':
            delete_mas(user)
        elif action=='5':
            return False
            break
        else:
            print('            輸入錯誤,請重新輸入:')
def zhuce_mas(cur):
    while True:
        student_zhuce_mas=input(zhuce).split()
        sno=student_zhuce_mas[0];
        sname=student_zhuce_mas[1];
        ssex=student_zhuce_mas[2];
        sbirthday=student_zhuce_mas[3];
        class_no=student_zhuce_mas[4];
        login_password = input("            請輸入密碼:").strip()
        sql1='insert into student values("{}","{}","{}","{}","{}");'.format(sno,sname,ssex,sbirthday,class_no)
        sql2='insert into login_student values("{}","{}");'.format(sno,login_password)
        print(sql1)
        print(sql2)
        try:
            cur.execute(sql1)
            cur.execute(sql2)
        except Exception as e:
            print(e)
        finally:
            print('            註冊成功!返回登陸頁面')
            break
#連線資料庫
def main():
    try:
        conn=pymysql.connect(
                        host='localhost',
                        user='root',
                        password='cl19970312',
                        db='educationmanagersysterm',
                        charset='utf8',)
        print('            資料庫連線成功')
    except pymysql.Error as e:
        print('            資料庫連線失敗',e)
    finally:
        while True:
            cur=conn.cursor()
            zhuce_login=input(index).strip()
            #1為登陸
            if zhuce_login=='1':
                user_mas=input(login).strip().split()
                user_id,user_password=user_mas[0],user_mas[1]
                #校驗登陸
                sql='select * from login_student where sno="{}";'.format(user_id)
                #print(sql)
                cur.execute(sql)
                results=cur.fetchall()
                is_login=login_student(results,user_password)
                #登陸成功
                if is_login:
                    print("            登陸成功")
                    #處理資料
                    if  not handle_mas(user_id,cur):
                        continue
                else:
                    print("            使用者名稱密碼錯誤!即將返回返回首頁")
                    continue
            #2為註冊
            elif zhuce_login=='2':
                zhuce_mas(cur)
            #任意鍵退出
            else:
                print('            您已安全退出')
                break
        conn.commit()
        # 關閉遊標
        cur.close()
        # 關閉連線
        conn.close()
if __name__=='__main__':
    main()

 

 

 

實現功能: 1.學生資訊管理系統的增刪改查 2.異常處理

後記

近期有很多朋友通過私信諮詢有關Python學習問題。為便於交流,點選藍色自己加入討論解答資源基地

 

相關文章