七月八号作业

# 2.获取用户输入的姓名、年龄、工作、爱好,格式化输出成下列格式
# ------------ info of XXX -----------
# Name  : XXX
# Age   : XXX
# Sex   : XXX
# Job   : XXX
# ------------- end -----------------

name = input("name:")
age = input("age:")
sex = input("sex:")
job = input("job:")
print('------------ info of XXX -----------')
print('Name  :%s\nAge   :%s\nSex   :%s\nJob   :%s'%(name,age,sex,job))
print('------------- end -----------------')



# 3.利用解压赋值获取列表头两个元素
l = ['jason','jerry','tom','tony','oscar','frank']
x , y , *_ = l
print(x,y)


# 4.利用if判断完成用户职称对应打印
#     """
#     输入                输出
#     jason                CEO
#     tank                保安
#     egon                保洁
#     tony                后勤
#     其他用户名          路人甲
#     """

user = {'jason':'CEO','tank':'保安','egon':'保洁','tony':'后勤'}
new_user = input('请输入用户名')
if new_user in user:
    print('欢迎%s'%user[new_user])
else:
    print('欢迎路人甲')


# 5.
# 利用if判断完成简单的登陆功能(进阶)
# 获取用户输入的用户名和密码跟后台自己写好的用户名密码比对(比如jason,123)
# 如果输入正确则打印登陆成功,输入错误则打印用户名或密码错误
#
# 6.
# 修改代码

fail = 0
u = None



while u == None:
    a = input('按1登录\n按0退出').strip()
    if a == '0':
        break
    elif a == '1':
        user = {}
        with open('user.txt', mode='rt', encoding='utf_8') as f:
            for l in f:
                k , v = l.strip().split(':')
                user[k] = v
        if fail < 3:
            while fail < 3:
                new_user = input('请输入用户名:').strip()
                new_pwd = input('请输入密码:').strip()
                if new_user in user:
                    if new_pwd == user[new_user]:
                        print('登录成功')
                        fail = 0
                        u = new_user
                        break
                    else:
                        print('密码错误')
                        fail += 1
                else:
                    print('用户名不存在')
                    fail += 1
            else:
                y = input('失败三次,是否增加三次\n需要请输入y\n')
                if y == 'y':
                    fail = 0
                else:
                    break
    else:
        print('输入有误请重新输入。')

import os
while u != None:
    b = input('欢迎%s\n修改密码请按1\n退出请按0\n'%u).strip()
    if b == '1':
        pwd1 = input('请输入新密码').strip()
        pwd2 = input('请确认新密码').strip()
        if pwd1 == pwd2:
            with open('user.txt',mode='rt',encoding='utf-8') as f1,\
                    open('.user.txt',mode='wt',encoding='utf-8') as f2:
                for l in f1:
                    k , v = l.strip().split(':')
                    if k == u:
                        f2.write('%s:%s\n'%(u,pwd1))
                    else:
                        f2.write('%s:%s\n' % (k,v))
            os.remove('user.txt')
            os.rename('.user.txt', 'user.txt')
            print('密码修改成功\n请重新登录')
            u = None
            break
        else:
            print('两次输入密码不相同')
    elif b == '0':
        u = None
        print('再见')
        break
    else:
        print('输入有误')

 

user.txt

a:123
b:456
z:z
q:q

 

posted @ 2020-07-08 16:04  最冷不过冬夜  阅读(431)  评论(0编辑  收藏  举报