模拟博客园登陆

"""1),启动程序,首页面应该显示成如下格式:
    欢迎来到博客园首页
    1:请登录
    2:请注册
    3:文章页面
    4:日记页面
    5:评论页面
    6:收藏页面
    7:注销
    8:退出程序
2),用户输入选项,3~6选项必须在用户登录成功之后,才能访问成功。
3),用户选择登录,用户名密码从register文件中读取验证,三次机会,
        没成功则结束整个程序运行,成功之后,可以选择访问3~6项,访问页面之前,
        必须要在log文件中打印日志,日志格式为-->用户:xx 在xx年xx月xx日 执行了 %s函数,
        访问页面时,页面内容为:欢迎xx用户访问评论(文章,日记,收藏)页面
4),如果用户没有注册,则可以选择注册,注册成功之后,可以自动完成登录,然后进入首页选择。
#5),注销用户是指注销用户的登录状态,使其在访问任何页面时,必须重新登录。"""
# ========================eval做的======================================

#
# import time                                                 #引入时间模块
# username = None                                             #设立一个全局变量  后面调用
# flag = False                                                # 设一个flag,判断是否登陆
#
#
# def record_log(fn):                                          #装饰器函数,记录日志功能
#     def inner(*args,**kwargs):
#         with open("log","r+",encoding="utf-8") as f:
#             f.write(f"用户{username}在%s, 访问了%s函数\n" % (time.strftime("%Y-%m-%d %H:%M:%S"), fn.__name__))
#             fn(*args,**kwargs)
#     return inner
#
#
# def login_verify(fn):                                         #装饰器函数,验证是否登陆功能
#     def inner():
#         while 1:
#             if flag:                                          #判断是否登陆
#                 fn()
#                 break
#             else:                                             #没登陆执行登陆函数
#                 login()
#     return inner
#
# def show():                                                    #展示给用户博客园的功能
#     print("欢迎来到博客园首页\n"
#     "1:请登录\n"
#     "2:请注册\n"
#     "3:文章页面\n"
#     "4:日记页面\n"
#     "5:评论页面\n"
#     "6:收藏页面\n"
#     "7:注销\n"
#     "8:退出程序")
#
#
#
# def login():                                                    # 登陆函数
#     global flag                                                 #登陆成功后便于修改flag
#     n = 1
#     while n < 4 :
#         user_input_name = input("请输入您的用户名:").strip()
#         user_input_pwd = input("请输入您的密码:").strip()
#         with open("register", "r", encoding="utf-8") as f:
#             for line in f:
#                 dic = eval(line)
#                 if user_input_name == dic["username"] and user_input_pwd == dic["password"]:
#                     print("登陆成功")
#                     flag = True                                   #修改flag,后面函数都不用登陆了
#                     global username                               #修改全局username,使其能用于其他函数
#                     username = user_input_name
#                     return
#                 else:
#                     continue
#             else:
#                 print(f"用户名或密码错误,您还剩{3-n}次机会")
#                 n += 1
#
#
# def register():                                                     #注册函数
#     global flag
#     with open("register", "r+", encoding="utf-8") as f:
#         while flag == False:
#             user_input_name = input("请输入您要注册的用户名:").strip()
#             user_input_pwd = input(("请输入您的密码:").strip())
#             for line in f:
#                 dic = eval(line)
#                 if user_input_name == dic["username"]:
#                     print("用户名已存在,请重新输入:")
#                 else:
#                     continue
#                 break
#             else:
#                 #将没有重复的按固定格式写入文件
#                 f.write("\n" + '{"username":' + '"' + f"{user_input_name}" + '",' + '"password":' + '"' + f"{user_input_pwd}" + '"'"}")
#                 print("注册成功")
#                 flag = True
#                 show()
#
# @login_verify
# @record_log
# def paper():                                            #文章页面函数
#     if flag == True:
#         print(f"欢迎{username}访问文章页面")
#
# @login_verify
# @record_log
# def diary():                                            #日记页面函数
#     if flag == True:
#         print(f"欢迎{username}访问日记页面")
#
# @login_verify
# @record_log
# def comment():                                          #评论页面函数
#     if flag == True:
#         print(f"欢迎{username}访问评论页面")
#
# @login_verify
# @record_log
# def collect():                                          #收藏页面函数
#     if flag == True:
#         print(f"欢迎{username}访问收藏页面")
#
# def logout():                                           #注销函数,
#     flag = False
#
# def quik():                                             #退出函数
#     exit()
#
# def start():                                            #启动函数
#     while True:
#         show()
#         user_choice = input("请输入您要选择的操作:").strip()
#         if user_choice == "1":
#             login()
#         elif user_choice == "2":
#             register()
#             break
#         elif user_choice == "3":
#             paper()
#             break
#         elif user_choice == "4":
#             diary()
#             break
#         elif user_choice == "5":
#             comment()
#             break
#         elif user_choice == "6":
#             collect()
#             break
#         elif user_choice == "7":
#             logout()
#         elif user_choice == "8":
#             quik()
#         else:
#             print("输入有误,请重新输入:")
#
# start()




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值