python課程設(shè)計(jì)學(xué)生成績(jī)管理系統(tǒng)結(jié)尾加代碼_第1頁(yè)
python課程設(shè)計(jì)學(xué)生成績(jī)管理系統(tǒng)結(jié)尾加代碼_第2頁(yè)
python課程設(shè)計(jì)學(xué)生成績(jī)管理系統(tǒng)結(jié)尾加代碼_第3頁(yè)
python課程設(shè)計(jì)學(xué)生成績(jī)管理系統(tǒng)結(jié)尾加代碼_第4頁(yè)
python課程設(shè)計(jì)學(xué)生成績(jī)管理系統(tǒng)結(jié)尾加代碼_第5頁(yè)
已閱讀5頁(yè),還剩12頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Python課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告學(xué) 院 應(yīng)用技術(shù)學(xué)院 班 級(jí) 通信工程 姓 名 學(xué) 號(hào) 提交日期 2019-7-3一、實(shí)驗(yàn)?zāi)康模?、 熟悉python和相關(guān)軟件的基本操作2、 基于本學(xué)期所學(xué)python知識(shí),熟練應(yīng)用掌握,制作符合要求的學(xué)生成績(jī)管理系統(tǒng)。3、 會(huì)對(duì)程序運(yùn)行中錯(cuò)誤代碼進(jìn)行分析,找出合理解決方案。二、基本功能要求:1、 用戶登錄,如果不是管理員,只能顯示顯示所有學(xué)生成績(jī)信息,如果是管理員,則顯示菜單2、 錄入學(xué)生的信息:姓名、學(xué)號(hào)、語(yǔ)文成績(jī)、數(shù)學(xué)成績(jī)、外語(yǔ)成績(jī)3、 顯示所有信息,并且要有標(biāo)題4、 可以按學(xué)號(hào)或者姓名查找學(xué)生并修改或者刪除學(xué)生信息5、 按平均分從高往低排序顯示6、 篩選出

2、掛科學(xué)生信息三、程序運(yùn)行截圖:1.登陸學(xué)生信息管理系統(tǒng)管理員登錄界面:學(xué)生登陸界面:2. 先輸入數(shù)字5查詢已添加的學(xué)生信息輸入數(shù)字6查找掛科學(xué)生信息3. 輸入數(shù)字7按照分?jǐn)?shù)排序4.再次添加學(xué)生信息,查詢學(xué)生信息5. 先輸入數(shù)字4修改學(xué)生信息,然后輸入要修改的學(xué)生學(xué)號(hào)36、輸入5查詢所有的學(xué)生信息。7、輸入數(shù)字2刪除學(xué)號(hào)為3的學(xué)生信息,再輸入數(shù)字5顯示全部學(xué)生信息四、總結(jié):1.練習(xí)了數(shù)據(jù)庫(kù)的打開(kāi),輸入,修改和刪除。2.了解了數(shù)據(jù)庫(kù)的基本管理方法。3.熟悉python和相關(guān)軟件的基本操作4.基于本學(xué)期所學(xué)python知識(shí),熟練應(yīng)用掌握,制作符合要求的學(xué)生成績(jī)管理系統(tǒng)。5.會(huì)對(duì)程序運(yùn)行中錯(cuò)誤代碼進(jìn)行

3、分析,找出合理解決方案。在完成課設(shè)的過(guò)程,要先下載Python3.7和JetBrains PyCharm 和MySQL Workbench8.0,因?yàn)榈谝淮谓佑|這幾個(gè)軟件,好多知識(shí)不太懂,所以上網(wǎng)查資料,去圖書館查資料,多虧了王老師不厭其煩地講解,以及同學(xué)們的幫助,在今后的Python學(xué)習(xí)中,我要再接再厲,穩(wěn)扎穩(wěn)打,切實(shí)提高自己的專業(yè)能力。from pymysql import *'''菜單欄'''def menu(): print('n*') print('n* 請(qǐng)選擇你的操作 *') print('*

4、1.查詢?nèi)w學(xué)生信息 *') print('* 2.新增學(xué)生信息 *') print('* 3.修改學(xué)生信息 *') print('* 4.刪除學(xué)生信息 *') print('* 5.查詢掛科學(xué)生 *') print('* 6.查詢成績(jī)排名 *') print('* 0.按任意鍵退出 *') print('n*')'''顯示所有學(xué)生信息'''def searchAll(): cn = connect(host='127.

5、0.0.1', port=3306, user='root', password='123456', db='st') cur=cn.cursor() sql=str('select * from str') cur.execute(sql) data=cur.fetchall() for each in data: print(each) cur.close() # 關(guān)閉游標(biāo) cn.close() # 釋放數(shù)據(jù)庫(kù)資源'''添加學(xué)生信息'''def addstu(): a=i

6、nt(input('學(xué)號(hào):') b=input('姓名:') c=int(input('語(yǔ)文成績(jī):') d = int(input('數(shù)學(xué)成績(jī):') e = int(input('英語(yǔ)成績(jī):') #需要判斷看輸入是否合法 cn = connect(host='127.0.0.1', port=3306, user='root', password='123456', db='st') cur = cn.cursor() sql= "inser

7、t into str values (%d,'%s',%d,%d,%d)"%(a,b,c,d,e) cur.execute(sql) mit() cur.close() # 關(guān)閉游標(biāo) cn.close() # 釋放數(shù)據(jù)庫(kù)資源 searchAll()'''修改學(xué)生信息'''def updateStu(): print('請(qǐng)輸入您想修改學(xué)生的學(xué)號(hào):') #需要加判斷,可與addStu()配合,多一條判斷,學(xué)生是否在其中 a = int(input('學(xué)號(hào):') b = input('姓

8、名:') c = int(input('語(yǔ)文成績(jī):') d = int(input('數(shù)學(xué)成績(jī):') e = int(input('英語(yǔ)成績(jī):') # 需要判斷看輸入是否合法 cn = connect(host='127.0.0.1', port=3306, user='root', password='123456', db='st') cur = cn.cursor() sql = "update str set sn='%s',cs='

9、%d',ms='%d',es='%d' where stn='%d'" % (b, c, d, e,a) cur.execute(sql) mit() cur.close() # 關(guān)閉游標(biāo) cn.close() # 釋放數(shù)據(jù)庫(kù)資源 searchAll()'''刪除學(xué)生信息'''def deleteStu(): dst=int(input('請(qǐng)輸入您想刪除學(xué)生的學(xué)號(hào):') '''a=int(input("確定刪除請(qǐng)按 1 "

10、)''' '''if(a):''' cn = connect(host='127.0.0.1', port=3306, user='root', password='123456', db='st') cur = cn.cursor() sql = "delete from str where stn=%f "%(dst) cur.execute(sql) mit() cur.close() # 關(guān)閉游標(biāo) cn.close() # 釋放數(shù)據(jù)

11、庫(kù)資源 '''else: print("您取消了刪除!")''' searchAll()'''掛科學(xué)生名單'''def failedStu(): print('n語(yǔ)文掛科學(xué)生名單:') sqlChinese="select sn from str where cs <60" cn = connect(host='127.0.0.1', port=3306, user='root', password=

12、9;123456', db='st') cur = cn.cursor() cur.execute(sqlChinese) failedChinese = cur.fetchall() print(failedChinese) cur.close() # 關(guān)閉游標(biāo) cn.close() # 釋放數(shù)據(jù)庫(kù)資源 print('n數(shù)學(xué)掛科學(xué)生名單:') sqlMath = "select sn from str where ms <60" cn = connect(host='127.0.0.1', port=3306,

13、 user='root', password='123456', db='st') cur = cn.cursor() cur.execute(sqlMath) failedMath = cur.fetchall() print(failedMath) cur.close() # 關(guān)閉游標(biāo) cn.close() # 釋放數(shù)據(jù)庫(kù)資源 print('n英語(yǔ)掛科學(xué)生名單:') sqlEnglish = "select sn from str where es <60" cn = connect(host=

14、9;127.0.0.1', port=3306, user='root', password='123456', db='st') cur = cn.cursor() cur.execute(sqlEnglish) failedEnglish = cur.fetchall() print(failedEnglish) cur.close() # 關(guān)閉游標(biāo) cn.close() # 釋放數(shù)據(jù)庫(kù)資源'''按平均成績(jī)降序排名'''def rankStu(): sqlRank="SELEC

15、T sn,cs,ms,es,(cs+ms+es)/3 AS Average FROM strORDER BY Average DESC;" cn = connect(host='127.0.0.1', port=3306, user='root', password='123456', db='st') cur = cn.cursor() cur.execute(sqlRank) mit() rank=cur.fetchall() for each in rank : print(each) cur.close() #

16、關(guān)閉游標(biāo) cn.close() # 釋放數(shù)據(jù)庫(kù)資源'''身份判斷'''def identity(): try: administrator = "l":123456,"ll":123456, user="student1":111111,"student2":111111 loginname = input('請(qǐng)輸入用戶名:') loginpwd = input('請(qǐng)輸入密碼:') if loginname in administrat

17、or: if loginpwd="123456": print("* 尊敬的管理員您好!*") return True else: print("密碼錯(cuò)誤,請(qǐng)重新輸入!") identity() return True elif loginname in user: if loginpwd = "111111": print("* 親愛(ài)的同學(xué),你好!*") searchAll() return False else: print("密碼錯(cuò)誤,請(qǐng)重新輸入!") identity() return False else: print("*非法用戶,請(qǐng)檢查您的用戶名!*") identity() finally: pass'''主函數(shù)&#

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論