一、程序功能(Function)
1、功能概述
利用python完成完成一個學生信息的增刪改查程序,主要涉及知識點:程序控制結構(做多級菜單)、文件讀寫操作(學生信息要保存到磁盤上的文件裏)。
2、思維導圖
二、 學生實體(Entity)
2、關係模式
學生(學號,姓名,性別,年齡,班級,專業,系部,電話)
3、學生表記錄
行——記錄——元組
學號 | 姓名 | 性別 | 年齡 | 班級 | 專業 | 系部 | 電話 |
---|---|---|---|---|---|---|---|
2020001 | 陳天 | 男 | 19 | 2020級軟件技術4班 | 軟件技術 | 信息工程學院 | 111111111 |
2020002 | 李瀟 | 男 | 19 | 2020級軟件技術4班 | 軟件技術 | 信息工程學院 | 111111111 |
2020003 | 陳天 | 男 | 19 | 2020級軟件技術4班 | 軟件技術 | 信息工程學院 | 111111111 |
2020004 | 陳天 | 男 | 19 | 2020級軟件技術4班 | 軟件技術 | 信息工程學院 | 111111111 |
2020005 | 陳天 | 男 | 19 | 2020級軟件技術4班 | 軟件技術 | 信息工程學院 | 111111111 |
2020006 | 陳天 | 男 | 19 | 2020級軟件技術4班 | 軟件技術 | 信息工程學院 | 111111111 |
這一學期我們沒有學習MySQL,所以我們將學生信息保存到文本文件裏面,用空格隔開每個字段
三、讀取學生文件
文件結構是由若干行若干列構成,一行一列地讀取,每一行讀取出來的字符串,通過空格拆分成一個列表,所有行讀取出來之後就自然構成列表,即二維列表。
1、演示用二維列表保存多個學生信息創建六個列表:
student1、student2、student3、student4、student5和student6,然後添加到student是列表裏
直接輸出student列表
格式輸出students
查看學生文件位置
切換工作目錄
讀取學生文件,保存到二維列表並輸出
大家可以發現一個問題,每一行尾巴有個“\n”,需要去除掉纔好。
格式化輸出students列表
len(students) - 得到二維列表的行數
len(students[i]) - 得到二維列表第(i-1)行的元素個數,即列數
四、對學生二維列表進行增刪改查操作
1、增加學生記錄
目前students裏有六個元素(學生)
添加一個新元素(學生)
輸出更新之後的students二維列表
2、查詢學生記錄
(1)按學號查詢學生記錄
這個程序有個缺陷,如果沒有查詢到,就沒有任何輸出信息,按理應該給用戶一個提示:“查無此人!”
(2)按姓名查詢學生記錄
3、修改學生記錄
修改學號爲"2020007"的學生記錄,將年齡改爲“20”,電話改爲“110112119”
修改學號爲“2020006”的學生記錄,將年齡改爲“16”,電話改爲“119110120”
4、刪除學生記錄
刪除學號爲“2020006”的學生記錄
刪除學號爲“2020008”的學生記錄