python之學生信息管理系統

函數:

一塊具有獨立功能的代碼塊,重複使用,那麼往往就需要使用函數,使用函數把這塊代碼封裝成一個整體

語法

def 函數名(形參):

    函數代碼 (函數要執行的代碼)

調用

函數名(實參)

函數的參數根據實際需求可有可無

局部變量:在函數裏面定義的變量,它只在定義它的函數中有效,出了這個函數後不可訪問。函數的形參屬於局部變量。

全局變量:在函數外邊定義的變量,在某個函數中可以直接訪問,但要對其修改,則要寫上global 變量名這條語句進行聲明,才能對全局變量進行修改,否則會產生異常。

函數返回值  return可以返回多個數據,通過列表或元祖的形式把數據整合成一個整體,然後返回

在這裏編寫程序實現學生信息管理系統的添加、更改、顯示功能。

代碼如下

#用來保存學生的所有信息    
stuInfos=[]
#全局變量
newName=""
newSex=""
newPhone=""

#打印功能提示
def printMenu():
    print("="*30)
    print("      學生管理系統v1.0")
    print("1.添加學生信息")
    print("2.刪除學生信息")
    print("3.修改學生信息")
    print("4.查詢學生信息")
    print("5.顯示所有學生信息")
    print("0.退出系統")
    print("="*30)

#獲取一個學生的信息
def getInfo():
    global newName   
    global newSex
    global newPhone
    #這三個是全局變量,要對其進行修改,則要先聲明
    newName=input("請輸入學生的姓名:")
    newSex=input("請輸入學生的性別:")
    newPhone=input("請輸入學生的手機號碼:")
   #通過列表的形式把數據整合成一個整體,然後返回
    return [newName,newSex,newPhone]

#添加學生信息
def addStuInfo():
    result=getInfo()
    newInfo={}
    newInfo['name']=result[0]
    newInfo['sex']=result[1]
    newInfo['phone']=result[2]
    stuInfos.append(newInfo)
#修改一個學生的信息
def modifyStuInfo():
    stuId=int(input("請輸入要修改的學生的序號:"))
    getInfo()
#先獲得要修改的學生在stuInfos中的位置,即stuId-1,當前位置是以字典形式存的,再找字典中要修改的值對應的鍵,即姓名···
    stuInfos[stuId-1]['name']=newName
    stuInfos[stuId-1]['sex']=newSex
    stuInfos[stuId-1]['phone']=newPhone

def main():
    while True:
        #打印提示信息
        printMenu()
        key=input("請輸入你要選擇的操作:")
        if key=='1':
            #添加學生信息
            addStuInfo()
        elif key=='3':
            #修改學生信息
            modifyStuInfo()
        elif key=='5':
           print("="*30)
           print("學生的信息如下:")
           print("序號  姓名   性別   手機號碼")
           i=1
           for tempInfo in stuInfos:
               print("%d   %s   %s     %s"%(i,tempInfo['name'],tempInfo['sex'],tempInfo['phone']))
               i+=1
#調用主函數
main()
運行結果如下圖




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章