国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

基于python實現學生管理系統

2020-01-04 14:19:45
字體:
來源:轉載
供稿:網友

本文為大家分享了python實現學生管理系統的具體代碼,供大家參考,具體內容如下

1.0版本學生管理系統

'''  1.添加學員  2.修改學員  3.查詢學員  4.刪除學員  0.退出程序'''student_list=[]while True:  print('1.添加學員')  print('2.修改學員')  print('3.查詢學員')  print('4.刪除學員')  print('0.退出程序')  sel_num=input('請輸入您要進行的操作:')  sel_num=int(sel_num)  #如果選擇的數字不在0~5 繼續選擇  while sel_num not in range(0,5):    sel_num=input('您的選擇無效,請重新選擇:')    sel_num=int(sel_num)  if sel_num==1:    name=input('請輸入姓名:')    age=input('請輸入年齡:')    sex=input('請輸入性別:')    person_list=[name,age,sex]    student_list.append(person_list)    print('添加成功!')  elif sel_num==2:    for x in range(0,len(student_list)):      person=student_list[x]      print('序號:%s 姓名:%s 年齡:%s 性別:%s '%(x,person[0],person[1],person[2]))    index=input('請輸入要修改的序號:')    index=int(index)    while index not in range(0, len(student_list)):      index = input('您選擇的序號無效,請重新選擇:')      index = int(index)    person=student_list[index]    name=person[0]    age=person[1]    sex=person[2]    student_list[index][0]=input('請輸入修改后的姓名:(%s):'%name)    student_list[index][1]=input('請輸入修改后的年齡:(%s):'%age)    student_list[index][2]=input('請輸入修改后的性別:(%s)'%sex)    print('修改成功!')  elif sel_num==3:    for x in range(0,len(student_list)):      person=student_list[x]      name=person[0]      age=person[1]      sex=person[2]      print('序號:%s 姓名:%s 年齡:%s 性別:%s '%(x,name,age,sex))  elif sel_num==4:    for x in range(0,len(student_list)):      person=student_list[x]      print('序號:%s 姓名:%s 年齡:%s 性別:%s '%(x,person[0],person[1],person[2]))    print('1.刪除所有學員')    print('2.刪除選擇的學員')    num=input('請輸入您的選擇:')    if num=='1':      student_list.clear()    else:      index = input('請輸入要刪除學員的序號:')      index = int(index)      while index not in range(0, len(student_list)):        index = input('您選擇的序號無效,請重新選擇:')        index = int(index)      del student_list[index]  else:    break

2.0版本學生管理系統---函數版--用列表存放學員信息

#添加學員函數def add_student():  #輸入學員姓名、年齡、電話  name=input('請輸入學員姓名:')  age=input('請輸入學員年齡:')  phone=input('請輸入學員電話:')  #把name、age、phone放在小列表中  student=[name,age,phone]  # 把小列表添加到所有學員的大列表中  # append(object) insert(index,object) extend(iterable)  student_list.append(student)  print('添加學員成功!')#查詢學員函數def query_student():  #1.查詢所有學員  #2.輸入學員姓名 查詢學員得到查詢的學員的序號  print('1.查詢所有學員')  print('2.查詢部分學員')  num=int(input('請輸入操作序號:'))  while num not in range(1,3):    num=int(input('選擇無效,請重新輸入:'))  if num==1:    print('**************學員信息列表***************')    #遍歷大列表    for x in range(0,len(student_list)):      #根據x的值從大列表中取出小列表      student=student_list[x]      #從小列表中取出姓名、年齡、電話      name=student[0]      age=student[1]      phone=student[2]      print('序號:%s 姓名:%s 年齡:%s 電話:%s'%(x,name,age,phone))  else:    name = input('請輸入您要查詢的學員姓名:')    while 1:      a=False      for student in student_list:        if student[0] == name:          index = student_list.index(student, 0, 8)          print('序號:%s 姓名:%s 年齡:%s 電話:%s'%(index,student_list[index][0],student_list[index][1],student_list[          index][2]))          a=True      if a==False:        name=input('該學員沒找到,請重新輸入:')      else:        break # 修改學員的函數def update_student():  #判斷是否有學員信息,如果沒有,直接結束函數的執行  if len(student_list)==0:    print('沒有學員信息,無法進行修改操作!')    #強制結束函數的執行 return下面的代碼都不會再執行了    return  #1.查詢學員信息  query_student()  #2.選擇要修改的學員序號  num=input('請選擇要修改的學員序號:')  #3.轉換為整數  num=int(num)  #4.判斷選擇的學員序號是否在范圍內  while num not in range(0,len(student_list)):    #不在范圍,重新選擇    num=input('沒有該序號,請重選:')    num=int(num)  #5.根據選擇的序號取出對應的小列表  student=student_list[num]  new_name=input('請輸入修改后的姓名(%s):'%student[0])  new_age=input('請輸入修改后的年齡(%s)'%student[1])  new_phone=input('請輸入修改后的電話(%s)'%student[2])  #6.修改小列表中的數據  student[0]=new_name  student[1]=new_age  student[2]=new_phone  print('修改數據完成!')#刪除學員#1.根據學員序號刪除 2.刪除所有學員 3.根據學員的姓名來刪除(有同名的)def delete_student():  if len(student_list)==0:    print('沒有學員信息,無法執行刪除操作!')    return  print('1.根據學員序號刪除')  print('2.刪除所有學員')  print('3.根據學員姓名刪除學員')  #獲取輸入的內容并轉換為整數類型  num=int(input('請輸入您的選擇:'))  #判斷選擇的選項是否在范圍內  while num not in range(1,4):    num=int(input('沒有該序號,請重新選擇'))  #判斷選擇的選項  if num == 1:    # 1.查詢學員信息    query_student()    #2.選擇刪除的序號    num=int(input('請輸入您要刪除的學員序號:'))    #判斷選擇序號是否在范圍內    while num not in range(0,len(student_list)):      num=int(input('序號無效,請重選!'))    is_del=input('您確定要刪除(%s)學員的信息嗎?(y/n):'%student_list[num][0])    if is_del=='y':      #刪除列表中的所有數據      del student_list[num]      #student_list.pop(index)      print('%s學員信息刪除成功!'%student_list[num][0])  if num==2:    #確認刪除    is_del=input('您確定要刪除所有學員信息嗎?y(確定)/n(取消):')    if is_del=='y':      #刪除列表中的所有數據      student_list.clear()      print('所有學員刪除成功!')    else:      print('刪除數據操作已去取消!')  else:    name = input('請輸入您要刪除的學員的姓名:')    while 1:      #定義列表存放不等于name的小列表      list = []      #遍歷大列表      for student in student_list:        #判斷輸入的name是否和小列表里name的相等        if student[0] != name:          #找出與name不等的小列表所在的索引          index = student_list.index(student,0,len(student_list))          #將符合的小列表添加到list列表中          list.append(student_list[index])      #判斷兩個列表長度是否相等 相等說明大列表中不存在名字為name的小列表      if len(student_list) == len(list):        name = input('序號不存在,請重新輸入:')      #存在符合的小列表      else:        #清空大列表        student_list.clear()        #循環將list列表的內容寫入到空的大列表中        for dict in list:          student_list.append(dict)        break#1.聲明一個大列表,存放所有學員信息student_list=[]#2.while循環while True:  print('***********學員管理系統V2.0**************')  print('1.添加學員')  print('2.查詢學員')  print('3.修改學員')  print('4.刪除學員')  print('0.退出程序')  print('***************************************')  #選擇操作  num=input('請選擇您的操作:')  #轉換為整數  num=int(num)  #判斷選擇的選項是否在范圍內  while num not in range(0,5):    #重新選擇    num=input('沒有該選項,請重選:')    #把字符串轉換為整數類型    num=int(num)  #根據選擇的選項執行對應的操作  if num==1:    #調用添加學員的函數    add_student()  elif num==2:    #調用查詢學員的函數    query_student()  elif num==3:    #調用修改學員的的函數    update_student()  elif num==4:    delete_student()  else:    print('程序已結束!')    break

2.1版本學生管理系統---函數版--用字典存放學員信息

#添加學員函數def add_student():  #輸入學員姓名、年齡、電話  name=input('請輸入學員姓名:')  age=input('請輸入學員年齡:')  phone=input('請輸入學員電話:')  #把name、age、phone放在小字典中  student={'name':name,'age':age,'phone':phone}  # 把小字典添加到所有學員的大列表中  # append(object) insert(index,object) extend(iterable)  student_list.append(student)  print('添加學員成功!')#查詢學員函數def query_student():  #1.查詢所有學員  #2.輸入學員姓名 查詢學員得到查詢的學員的序號  print('1.查詢所有學員')  print('2.查詢部分學員')  num=int(input('請輸入操作序號:'))  while num not in range(1,3):    num=int(input('選擇無效,請重新輸入:'))  if num==1:    print('**************學員信息列表***************')    #遍歷大列表    for x in range(0,len(student_list)):      #根據x的值從大列表中取出小字典      student=student_list[x]      #從小字典中取出姓名、年齡、電話      name=student['name']      age=student['age']      phone=student['phone']      print('序號:%s 姓名:%s 年齡:%s 電話:%s'%(x,name,age,phone))  else:    name = input('請輸入您要查詢的學員姓名:')    while 1:      a=False      for student in student_list:        if student['name'] == name:          index = student_list.index(student, 0, 8)          print('序號:%s 姓名:%s 年齡:%s 電話:%s'%(index,student_list[index]['name'],student_list[index]['age'],                          student_list[index]['phone']))          a=True      if a==False:        name=input('該學員沒找到,請重新輸入:')      else:        break # 修改學員的函數def update_student():  #判斷是否有學員信息,如果沒有,直接結束函數的執行  if len(student_list)==0:    print('沒有學員信息,無法進行修改操作!')    #強制結束函數的執行 return下面的代碼都不會再執行了    return  #1.查詢學員信息  query_student()  #2.選擇要修改的學員序號  num=input('請選擇要修改的學員序號:')  #3.轉換為整數  num=int(num)  #4.判斷選擇的學員序號是否在范圍內  while num not in range(0,len(student_list)):    #不在范圍,重新選擇    num=input('沒有該序號,請重選:')    num=int(num)  #5.根據選擇的序號取出對應的小字典  student=student_list[num]  new_name=input('請輸入修改后的姓名(%s):'%student['name'])  new_age=input('請輸入修改后的年齡(%s)'%student['age'])  new_phone=input('請輸入修改后的電話(%s)'%student['phone'])  #6.修改小列表中的數據  student['name']=new_name  student['age']=new_age  student['phone']=new_phone  print('修改數據完成!')#刪除學員#1.根據學員序號刪除 2.刪除所有學員 3.根據學員的姓名來刪除(有同名的)def delete_student():  if len(student_list)==0:    print('沒有學員信息,無法執行刪除操作!')    return  print('1.根據學員序號刪除')  print('2.刪除所有學員')  print('3.根據學員姓名刪除學員')  #獲取輸入的內容并轉換為整數類型  num=int(input('請輸入您的選擇:'))  #判斷選擇的選項是否在范圍內  while num not in range(1,4):    num=int(input('沒有該序號,請重新選擇'))  #判斷選擇的選項  if num == 1:    # 1.查詢學員信息    query_student()    #2.選擇刪除的序號    num=int(input('請輸入您要刪除的學員序號:'))    #判斷選擇序號是否在范圍內    while num not in range(0,len(student_list)):      num=int(input('序號無效,請重選!'))    is_del=input('您確定要刪除(%s)學員的信息嗎?(y/n):'%student_list[num]['name'])    if is_del=='y':      #刪除列表中的所有數據      del student_list[num]      #student_list.pop(index)      print('%s學員信息刪除成功!'%student_list[num]['name'])    else:      print('刪除數據操作已去取消!')  elif num==2:    #確認刪除    is_del=input('您確定要刪除所有學員信息嗎?y(確定)/n(取消):')    if is_del=='y':      #刪除列表中的所有數據      student_list.clear()      print('所有學員刪除成功!')    else:      print('刪除數據操作已去取消!')  else:    name = input('請輸入您要刪除的學員的姓名:')    while 1:      # 定義列表存放不等于name的小列表      list=[]      # 遍歷大列表      for student in student_list:        # 判斷輸入的name是否和小字典里name的相等        if student['name']!=name:          # 找出與name不等的小字典所在的索引          index=student_list.index(student)          # 將符合的小字典添加到list列表中          list.append(student_list[index])      # 判斷兩個列表長度是否相等 相等說明大列表中不存在名字為name的小列表      if len(student_list)==len(list):        name=input('序號不存在,請重新輸入:')      # 存在符合的小字典      else:        # 清空大列表        student_list.clear()        # 循環將list列表的內容寫入到空的大列表中        for dict in list:          student_list.append(dict)        break#1.聲明一個大列表,存放所有學員信息student_list=[]#2.while循環while True:  print('***********學員管理系統V2.0**************')  print('1.添加學員')  print('2.查詢學員')  print('3.修改學員')  print('4.刪除學員')  print('0.退出程序')  print('***************************************')  #選擇操作  num=input('請選擇您的操作:')  #轉換為整數  num=int(num)  #判斷選擇的選項是否在范圍內  while num not in range(0,5):    #重新選擇    num=input('沒有該選項,請重選:')    #把字符串轉換為整數類型    num=int(num)  #根據選擇的選項執行對應的操作  if num==1:    #調用添加學員的函數    add_student()  elif num==2:    #調用查詢學員的函數    query_student()  elif num==3:    #調用修改學員的的函數    update_student()  elif num==4:    delete_student()  else:    print('程序已結束!')    break

3.0版本學生管理系統--將學員信息存入文件中

def is_in_range():  index = input('請選擇要(修改)刪除的學員序號:')  index = int(index)  while index not in range(0, len(student_list)):    index = input('您輸入的序號不在范圍內,請重新輸入:')    index = int(index)  return indexdef add_stu():  name = input('請輸入姓名:')  age = input('請輸入年齡:')  sex = input('請輸入性別:')  person_list = [name, age, sex]  student_list.append(person_list)  print('添加成功!')def alter_stu():  index=is_in_range()  person = student_list[index]  name = person[0]  age = person[1]  sex = person[2]  student_list[index][0] = input('請輸入修改后的姓名:(%s):' % name)  student_list[index][1] = input('請輸入修改后的年齡:(%s):' % age)  student_list[index][2] = input('請輸入修改后的性別:(%s)' % sex)  print('修改成功!')def see_stu():  for x in range(0, len(student_list)):    person = student_list[x]    name = person[0]    age = person[1]    sex = person[2]    print('序號:%s 姓名:%s 年齡:%s 性別:%s ' % (x, name, age, sex))def del_stu():  print('1.刪除所有學員')  print('2.刪除選擇的學員')  num = input('請輸入您的選擇:')  if num == '1':    student_list.clear()  else:    index = is_in_range()    del student_list[index]#聲明保存數據的函數def save_data():  #1.打開文件  file_handle=open('student_v2.txt',mode='w')  #2.for循環遍歷大列表  for student in student_list:    #把列表中的數據用空格分開拼接成一個字符串    s=' '.join(student)    #寫入    file_handle.write(s)    file_handle.write('/n')  #3.關閉文件  file_handle.close()#引入os模塊import os#讀取文件的函數def read_data():  #判斷文件是否存在  rs=os.path.exists('student_v2.txt')  if rs==True:    #1.打開文件    file_handle=open('student_v2.txt',mode='r')    #2.取出信息    contents=file_handle.readlines()    for content in contents:      #去除/n      content=content.strip('/n')      #使用空格分割字符串,得到列表      list_1=content.split(' ')      #將小列表添加到大列表中      student_list.append(list_1)    # 3.關閉文件    file_handle.close()# 聲明一個大列表,存放學院的姓名student_list = []read_data()while True:  print('1.添加學員')  print('2.修改學員')  print('3.查詢學員')  print('4.刪除學員')  print('0.退出程序')  sel_num = input('請輸入您要進行的操作:')  sel_num = int(sel_num)  # 如果選擇的數字不在0~5 繼續選擇  while sel_num not in range(0, 5):    sel_num = input('您的選擇無效,請重新選擇:')    sel_num = int(sel_num)  # 添加學員  if sel_num == 1:    add_stu()    save_data()  elif sel_num == 2:    # 1.展示所有學員信息    see_stu()    # 2.選擇要修改的學員序號    alter_stu()    save_data()  elif sel_num == 3:    see_stu()  elif sel_num == 4:    see_stu()    # 2.選擇要刪除的學員序號    del_stu()    save_data()  else:    break

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到python教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 吴旗县| 富宁县| 大安市| 龙山县| 鄂伦春自治旗| 临夏县| 乌鲁木齐市| 沅陵县| 贵溪市| 湖口县| 常山县| 绥芬河市| 紫金县| 邻水| 松原市| 元朗区| 余江县| 合作市| 正定县| 玉树县| 黄骅市| 临武县| 永春县| 建水县| 定西市| 平顺县| 汝阳县| 上林县| 封丘县| 平潭县| 滨海县| 新巴尔虎左旗| 中方县| 无极县| 六盘水市| 茂名市| 滨州市| 邵阳县| 汽车| 广宗县| 和顺县|