学习一周总结:
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("%s\t\t%s\t\t%s\t\t%s"% ("名称","网址","账户","密码"))
for data in g_dateDB:
item = g_dateDB[data]
print("%s\t\t%s\t\t%s\t\t%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("%s\t\t%s\t\t%s\t\t%s"% ("名称","网址","账户","密码"))
print("%s\t\t%s\t\t%s\t\t%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()