活动地址:CSDN21天学习挑战赛
学习一周总结:
1.基础就是基础,重要占比5%,因为基础是任何一门语言都有的,并不独特,我既然学了这么技术,更多的是有独特作用,而不是束之高阁的回忆。
2.离不开实践性的项目练手,尽管不是那么完美,但是让我知道了过程的种种不足,基础不扎实,
例如,字典遍历不会,总是错,判断语句总是漏掉,又不报错,编译又不过,滋味酸爽。
3.吐槽
1、就算是神,这种ifelse多了的话,也很难应对,代码不容易阅读
2、代码不报错,或者到处报错,小白的痛点
3、对语句控制能力差,总是侧漏,问题是代码对齐方式,这个要很久才能熟练掌握写作风格,否则代码不按自己写的走,莫名其妙结束了。
涉及到的知识:
数据类型的运用,数据转换,输入输出,字典,自定义函数,全局变量使用和修改,流程控制语句,模拟数据库技术,临时缓存等。
密码本示例''' 密码本【案例】 前面学习的内容了解即可,真的是基础,做项目的时候不会问你用哪个单一的知识点解决问题 一门语言关键还是运用,拿到这个技术能做些什么。 现在学的仅仅能把数据存到内存里,程序结束啥都没有了,后面学了数据库或文件操作就能把数据持久化。 ''' # 导入包 # import sys # 模拟数据库 g_dateDB = {} # 模拟数据ID g_id = 1 # 模拟当前数据 g_current_data = "" def pro_id(): ''' 数据库自增 ''' global g_id g_id += 1 def addPage(): ''' 添加页面 ''' print('''欢迎进入添加页面: 【0】返回主页 【1】添加密码 ''' ) info = input('➤请输入您的操作:') if info in ["0","1"]: if info == "0": main() elif info == "1": global g_id global g_dateDB text = input("请输入名称:") url = input("请输入网站地址:") account = input("请输入账户:") password = input("请输入密码:") dto = { "text": text, "url": url, "account": account, "password": password } g_dateDB[g_id] = dto print("添加成功") print(f"➤当前拥有:{len(g_dateDB)}条数据。") pro_id() addPage() else: pass def listPage(): ''' 列表页面 ''' print('''欢迎进入列表页面: 【0】返回主页 ''') #print(g_dateDB) if len(g_dateDB) > 0: print("%stt%stt%stt%s"% ("名称","网址","账户","密码")) for data in g_dateDB: item = g_dateDB[data] print("%stt%stt%stt%s"% (item["text"],item["url"],item["account"],item["password"])) else: main() else: print("暂无数据") main() #listPage() def searchPage(): ''' 搜索页面 ''' print('''欢迎进入搜索页面: 【0】返回主页 【1】根据名称查询 ''') #is_success =0 info = input('➤请输入您的操作:') if info == "0": main() elif info == "1": text = input('➤请输入名称:') if len(text)<0 : print("输入错误!") searchPage() else: if len(g_dateDB) > 0: for data in g_dateDB: item = g_dateDB[data] g_current_data = item if item["text"] == text: print("查询结果:") print("%stt%stt%stt%s"% ("名称","网址","账户","密码")) print("%stt%stt%stt%s"% (item["text"],item["url"],item["account"],item["password"])) #break else: searchPage() else: print("暂无数据") searchPage() else: print("输入错误,请重新输入:") searchPage() def pro_transform(key): ''' 内部转换【C】 ''' keys =("主页","添加","密码表格","查询","退出","","","","") return keys[int(key)] def pro_route(key): ''' 页面路由【B】 ''' msg = pro_transform(key) print(f'➤您正在进行操作:【{msg}】') if key == "1": addPage() elif key == "2": listPage() elif key == "3": searchPage() elif key == "4": print("已退出退出,感谢您的使用!") exit(0) def main(): ''' 主函数【A】 ''' print("●" *40) print('''欢迎使用G.s密码本 1.新增 2.密码表格 3.查询 4.退出 ''') print("●" *40) info = input('请输入您的操作:') if info in ["1","2","3","4"]: pro_route(info) else: print("输入错误,请重新输入:") main() # 初始化 main()