學生資訊系統(json模組解決資料持久化)

2022-09-16 23:39:19 字數 3413 閱讀 4680

import

json,os,time,sys

student_list =

file_path = '

name.txt'#

從檔案中讀取之前儲存的資料(考慮是否有對應檔案的問題,要做檔案是否存在的判斷),然後將讀取到的資料儲存到列表

defdataread(filepath):

#判斷filepath這個路徑對應的檔案是否存在:

ifos.path.exists(filepath):

print('

找到提取檔案')

f1 = open(filepath,'

r',encoding='

utf-8')

global

student_list

student_list =json.load(f1)

print('

學生資訊

',student_list)

f1.close()

print('

讀取資料成功')

else

:

print('

檔案不存在')

defaddstudent():

name = input('

請輸入學生姓名:')

age = int(input('

請輸入學生年齡:'))

stu_dict =

print('

學生資訊新增成功,1秒後自動返回主選單\n\n\n')

time.sleep(1)

defdelstudent():

name = input('

請輸入要刪除的學生姓名:')

for stu in

student_list:

if name == stu['

name']:

student_list.remove(stu)

print('

刪除成功')

else

:

print('

該學生資訊不存在')

defupdatestudent():

name = input("

請輸入要修改的學生姓名:")

for stu in

student_list:

if name == stu['

name']:

new_name = input("

請輸入修改後的姓名:")

new_age = eval(input("

請輸入修改後的年齡:"))

stu[

'name

'] =new_name

stu[

'age

'] =new_age

print('

修改成功')

break

else

:

print('

該學生資訊不存在')

#name = input('請輸入要修改的學生姓名:')

#age = int(input('請輸入修改學生的年齡:'))

#new_dict =

#if new_dict in student_list :

#index = student_list.index(new_dict)##

new_name = input('請輸入修改後的學生姓名:')

#new_age = int(input('請輸入修改後的學生年齡:'))##

#student_list[index]['name'] = new_name

#student_list[index]['age'] = new_age

#print('修改成功')

#else:##

print('該學生資訊不存在')

defquerystudent():

name = input('

請輸入要查詢的學生姓名:')

for stu in

student_list:

if name == stu['

name']:

print('

學生資訊:

',stu)

break

else

:

print('

該學生資訊不存在')

defshowall():

print('

所有學生資訊如下:')

for stu in

student_list:

print('

姓名:{},年齡:{}

'.format(stu.get('

name

'),stu.get('

age'

)))def

systemexit():

datawrite(file_path)

print('

謝謝使用')

sys.exit()

#將列表中的資料寫入檔案

defdatawrite(filepath):

f = open(filepath,'

w',encoding='

utf-8')

json.dump(student_list,f)

f.close()

print('

資料寫入成功')

#從檔案中載入資料

dataread(file_path)

while

true:

print('

1.新增學生')

print('

2.刪除學生')

print('

3.修改學生')

print('

4.查詢學生')

print('

5.展示所有')

print('

6.退出系統')

num = input('

請輸入1-6的數字進入相應功能:')

print('

------

'*6)

if num == '1'

: addstudent()

elif num == '2'

: delstudent()

elif num == '3'

: updatestudent()

elif num == '4'

: querystudent()

elif num == '5'

: showall()

elif num == '6'

: systemexit()

else

:

print('

輸入有誤

')

學生資訊系統錯誤

最近開始敲學生,每次敲完乙個模組就除錯一次,出現了些許問題 1 實時錯誤 3021 實時錯誤 3021 bof或eof中有乙個是 真 或者當前的記錄已經被刪除 出現此錯誤是因為 1.查詢的資料庫記錄為空.可以用 rs.recordcount 來判斷資料是否等於0 2.查詢到資料後,用 del 命令刪...

學生資訊系統求助 學生管理資訊系統 示例

第頁共 頁學生資訊管理資料庫系統設計與開發 一專案說明 一 概述 專案背景 資料庫程式設計 軟體定義 學生資訊管理系統 開發環境 sql server 二 需求分析 問題的提出 學生資訊管理是整個學校管理工作中的關鍵環節之一,涉及到 學生基本資訊管理 成績管理 住宿管理等諸多方面。採用計 算機資訊科...

2 學生資訊系統DOS

學生資訊系統dos include include include include struct student record struct student current null,head null,build null void main void printf n thank you n n...