def save():
with open('practise_4', 'w+', encoding='utf-8') as f:
for i in user_list:
info = str(i) + '\n'
info = info.replace('[', '')
info = info.replace(']', '')
info = info.replace("'", '')
info = info.replace(", ", ',')
f.write(info) def print_info():
for i in user_list:
if username in i:print('------用户个人信息------\n姓名\t%s\n职业\t%s\n部门\t%s' % (i[0],i[2],i[3])) def change_info():
print_info()
change_choice = input('请选择要修改的内容\n1.-----姓名-----\n2.-----职业-----\n3.-----部门-----\n>>>')
if change_choice == '':
new_name = input('请输入新用户名>>>').strip()
for i in user_list:
if username in i:i[i.index(username)] = new_name
save()
return True
elif change_choice == '':
new_job = input('请输入新职业>>>').strip()
for i in user_list:
if username in i: i[2] = new_job
save()
return True
elif change_choice =='':
new_dep = input('请输入部门>>>').strip()
for i in user_list:
if username in i: i[3] = new_dep
save()
else:
print('错误的命名,正在退出') def change_pwd():
old_pwd = input('请输入原密码>>>').strip()
if old_pwd == password:
new_pwd = input('请输入新密码>>>').strip()
for i in user_list:
if username in i: i[1] = new_pwd
save()
else:
print('密码错误!')
if __name__ == '__main__':
while True:
user_list = []
user_info = {}
login_status = None
with open('practise_4', 'r+', encoding='utf-8') as f:
for line in f.readlines(): user_list.append(line.strip().split(','))
for i in user_list: user_info[i[0]] = i[1]
count = 0
print('------欢迎进入用户登录界面---------')
while count < 3:
username = input('请输入用户名>>>').strip()
password = input('请输入密码>>>').strip()
if username in user_info and password == user_info[username]:
print('欢迎登陆')
login_status = True
break
else:
print('用户名或密码错误,请重试')
count += 1
while login_status == True:
print('------请选择用户功能------\n1.修改个人信息\n2.打印个人信息\n3.修改密码')
choice = input('>>>')
if choice == '':
satus = change_info()
if satus == True:
break
elif choice =='':
print_info()
elif choice =='':
change_pwd()
else:
print("错误的命令,请重试")

随便写的

panda,12,新工人,Transportation
pandaboy,456,walker,IT
zombie,789,saller,Offer

文件信息

路飞学城Python-Day9(practise)的更多相关文章

  1. 路飞学城—Python爬虫实战密训班 第三章

    路飞学城—Python爬虫实战密训班 第三章 一.scrapy-redis插件实现简单分布式爬虫 scrapy-redis插件用于将scrapy和redis结合实现简单分布式爬虫: - 定义调度器 - ...

  2. 路飞学城—Python爬虫实战密训班 第二章

    路飞学城—Python爬虫实战密训班 第二章 一.Selenium基础 Selenium是一个第三方模块,可以完全模拟用户在浏览器上操作(相当于在浏览器上点点点). 1.安装 - pip instal ...

  3. 路飞学城Python爬虫课第一章笔记

    前言 原创文章,转载引用务必注明链接.水平有限,如有疏漏,欢迎指正. 之前看阮一峰的博客文章,介绍到路飞学城爬虫课程限免,看了眼内容还不错,就兴冲冲报了名,99块钱满足以下条件会返还并送书送视频. 缴 ...

  4. 路飞学城-Python开发集训-第3章

    学习心得: 通过这一章的作业,使我对正则表达式的使用直接提升了一个level,虽然作业完成的不怎么样,重复代码有点多,但是收获还是非常大的,有点找到写代码的感觉了,遗憾的是,这次作业交过,这次集训就结 ...

  5. 路飞学城-Python开发集训-第1章

    学习体会: 在参加这次集训之前我自己学过一段时间的Python,看过老男孩的免费视频,自我感觉还行,老师写的代码基本上都能看懂,但是实际呢?....今天是集训第一次交作业的时间,突然发现看似简单升级需 ...

  6. 路飞学城-Python开发集训-第4章

    学习心得: 学习笔记: 在python中一个py文件就是一个模块 模块好处: 1.提高可维护性 2.可重用 3.避免函数名和变量名冲突 模块分为三种: 1.内置标准模块(标准库),查看所有自带和第三方 ...

  7. 路飞学城-Python开发集训-第2章

    学习心得: 这章对编码的讲解超级赞,现在对于编码终于有一点认知了,但还没有大彻大悟,还需要更加细心的琢磨一下Alex博客和视频,以前真的是被编码折磨死了,因为编码的问题而浪费的时间很多很多,现在终于感 ...

  8. 路飞学城Python-Day19(practise)

    # 特性1.继承:2.多态:3.封装 # 1.继承的用处:通过继承就可以解决类与类之间的代码冗余关系 # 2.多态的用处:1.增加了程序的灵活性,以不变应万变,使用者都是同一种形式去调用(func(a ...

  9. 路飞学城-Python开发-第二章

    ''' 数据结构: menu = { '北京':{ '海淀':{ '五道口':{ 'soho':{}, '网易':{}, 'google':{} }, '中关村':{ '爱奇艺':{}, '汽车之家' ...

  10. 路飞学城-Python开发-第三章

    # 数据结构: # goods = [ # {"name": "电脑", "price": 1999}, # {"name&quo ...

随机推荐

  1. php基础------将二维数组转三维数组

    将二维数组转为三维数组 /** * 二维数组转三维数组(指定键为三维数组的键名) * @param [type] $arr [要排序的数组] * @param [type] $key [指定的键] * ...

  2. Python数据分析3------数据预处理(2)----字符串处理

  3. js获取路径参数对象

    /** * 获取页面路径参数值 */ function getParams(key) { var result = {}; var paramStr = encodeURI(window.docume ...

  4. [洛谷P3391]【模板】文艺平衡树(Splay)

    题目大意:给定一个$1\sim n$的序列,每次翻转一个区间,输出最后的序列. 解题思路:Splay的区间翻转操作.我借此打了个Splay的模板(运用内存池,但有些功能不确定正确,例如单点插入). 大 ...

  5. CMDB设计

    CMDB(资产管理数据库) CMDB是所有运维工具的数据基础 CMDB包含的内容 用户管理,记录测试,开发,运维人员的用户表 业务线管理,需要记录业务的详情 项目管理,指定此项目用属于哪条业务线,以及 ...

  6. Python3的URL编码解码

    前言 博主最近在用python3练习一些爬虫脚本的时候,发现一些url的编码问题,在浏览器提交请求api时,如果url中包含汉子,就会被自动编码掉.呈现的结果是 ==> %xx%xx%xx.如果 ...

  7. 【 【henuacm2016级暑期训练】动态规划专题 K】 Really Big Numbers

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 会发现如果x是reallynumber那么x+1也会是reallynumber.... (个位数+1,各位数的和+1了但是整个数也+ ...

  8. Linux下的进程环境

    僵尸进程.孤儿进程.守护进程.进程组.会话.前台进程组.后台进程组 1,僵尸进程 子进程结束,父进程没有明确的答复操作系统内核:已收到子进程结束的消息.此时操作系统内核会一直保存该子进程的部分PCB信 ...

  9. 洛谷—— P1260 工程规划

    https://www.luogu.org/problem/show?pid=1260 题目描述 造一幢大楼是一项艰巨的工程,它是由n个子任务构成的,给它们分别编号1,2,…,n(5≤n≤1000). ...

  10. java mail邮件发送(带附件) 支持SSL

    java mail邮件发送(带附件)有三个类 MailSenderInfo.java package mail; import java.util.Properties; import java.ut ...