python学生名片管理vv2.0是在1.0的基础上增加部分功能,实现将数据存入文件保存,以便于程序停止后还能再次取到数据。具体实现请看如下部分:
card_main.py
import sys from One.card_func2 import * def head(): print('*' * 30) print('学生信息管理系统v2.0') print('1.添加学生\t2.显示所有\t3.查询学生\t0.退出系统') print('*' * 30) def main(): while True: head() num = input('输入操作:') if num == '1': print('选择功能添加学生') add_card() elif num == '2': print('选择功能添显示所有') show_all() elif num == '3': print('选择功能查询学生') search_card() elif num == '0': sys.exit() else: print('输入有误,命令无效') if __name__ == '__main__': main()
card_func2.py
import json import time stutent_list = [] def add_card(): name = input('请输入姓名:') age = input('请输入年龄:') qq = input('请输入QQ:') mail = input('请输入邮箱:') dict = {} dict['name'] = name dict['age'] = age dict['qq'] = qq dict['mail'] = mail stutent_list.append(dict) memory(stutent_list) def memory(stutent_list): # 将数据存入文件 with open('student.json', 'w') as f: for i in stutent_list: json_i = json.dumps(i) f.write(json_i+'\n') f.close() def repick(): # 从文件中去除数据 risk_result = [] with open('student.json', 'r') as f: risk_new_list = f.read().split('\n')[:-1] for x in risk_new_list: json_x = json.loads(x) risk_result.append(json_x) f.close() return risk_result def show_all(): global stutent_list stutent_list = repick() table_head() for dict in stutent_list: print('-' * 32) print('| %s\t|\t%s\t|\t%s\t|\t%s\t|' % (dict['name'], dict['age'], dict['qq'], dict['mail'])) def search_card(): global stutent_list name = input('请输入查找学生的姓名:') for dict in stutent_list: if dict['name'] == name: table_head() print('-' * 32) print('| %s\t|\t%s\t|\t%s\t|\t%s\t|' % (dict['name'], dict['age'], dict['qq'], dict['mail'])) print('您可以执行操作:1.删除\t2.修改\t3.返回上一级') deal_card(dict) break else: print('查无此人!!!') def table_head(): print('_' * 32) print('| 姓名\t|\t年龄\t|\tQQ\t|\t邮箱\t|') def deal_card(dict): order = input('请输入命令:') while True: if order == '1': delete_card(dict) break elif order == '2': modify_card(dict) break elif order == '3': break else: print('输入有误,命令无效') def delete_card(dict): print('执行命令,删除数据') stutent_list.remove(dict) print('...正在删除,请等待...') turnTime() print('删除成功,返回主界面') def modify_card(dict): print('执行命令,修改数据') dict['name'] = input('请输入姓名:') dict['age'] = input('请输入年龄:') dict['qq'] = input('请输入QQ:') dict['mail'] = input('请输入邮箱:') print('...正在修改,请等待...') turnTime() print('修改成功,返回主界面') def turnTime(): for i in list(range(5, 0, -1)): print(i, 's') time.sleep(1)
以下部分为控制台效果截图:
2.查询
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com
暂无评论...
更新日志
2024年11月18日
2024年11月18日
- 证声音乐图书馆《真夏派对 x 浩室》[320K/MP3][67.19MB]
- 张镐哲.1994-无助【波丽佳音】【WAV+CUE】
- Relic.2024-浮在虛无的诗意【SEEAHOLE】【FLAC分轨】
- 群星.2001-台语(原主唱)排行总冠军黄金典藏版6CD【柯达唱片】【WAV+CUE】
- 证声音乐图书馆《真夏派对 x 浩室》[FLAC/分轨][379.1MB]
- 徐良《东西世界》[WAV+CUE][1.1G]
- 证声音乐图书馆《真夏派对 x 迪斯可》[320K/MP3][67.9MB]
- TheDutchSwingCollegeBand-JubileeConcert(LiveRemastered2024)(1980)[24Bit-96kHz]FLAC
- 永恒英文金曲精选6《TheBestOfEverlastingFavouritesVol.6》[WAV+CUE]
- ABC唱片-鲍比达·新民乐《满江红》[APE+CUE]
- 许嵩.2014-不如吃茶去【海蝶】【WAV+CUE】
- 周笔畅.2024-HAVE.A.GOOD.NIGHT【SN.Music】【FLAC分轨】
- 周笔畅.2024-HAVE.A.NICE.DAY【SN.Music】【FLAC分轨】
- 证声音乐图书馆《真夏派对 x 迪斯可》[FLAC/分轨][380.78MB]
- 证声音乐图书馆《星空下 爵士钢琴》[320K/MP3][65.88MB]