zoukankan      html  css  js  c++  java
  • Python之路—Day1作业

    作业:编写登陆接口

    • 输入用户名密码
    • 认证成功后显示欢迎信息
    • 输错三次后锁定

    一、本程序包含文件:
    1、用户登录.py :主程序
    2、account.txt :存储用户名密码
    3、lock.txt :存储锁定的用户名
    4、用户登录.jpg :程序执行流程图
    5、ReadMe.txt :程序说明文档

    二、程序说明:
    用户登陆,输入用户名密码,输入正确显示欢迎信息,输入错误三次后锁定该用户。

    三、用到的知识点:
    input 用户输入
    if 判断
    for 循环
    open 文件操作
    break 跳出循环

    四、流程图

     1 #!/usr/bin/env python
     2 #    -.-    coding: utf-8    -.-
     3 # by sandler
     4 account_file = 'account.txt'
     5 #用户列表,包含用户名和密码
     6 lock_file = 'lock.txt'
     7 #锁定用户列表
     8 
     9 for i in range(3):
    10     username = input("username: ").strip()
    11     password = input("password: ").strip()
    12     if len(username) !=0 and len(password) !=0: #判断用户输入是否为空
    13         lf = open(lock_file,'r')
    14         lockSuccess = False
    15         for lf_line in lf.readlines():
    16             lf_line = lf_line.split()
    17             if username  == lf_line[0]: #判断用户输入的用户名是否在锁定列表
    18                 print("Locked %s." % username)
    19                 lockSuccess = True
    20                 lf.close()
    21                 break
    22         if lockSuccess is True:
    23             break
    24         af = open(account_file,'r')
    25         loginSuccess = False
    26         for af_line in af.readlines():
    27             af_line = af_line.split()
    28             if username  == af_line[0] and password == af_line[1]:  #判断用户输入的用户名密码是否在用户列表
    29                 print("Welcon %s login my system" % username)
    30                 loginSuccess = True
    31                 break
    32         if loginSuccess is True:
    33             break
    34     else:
    35         continue
    36 else:
    37     f = open(lock_file,'a')
    38     f.write('%s
    ' % username)
    39     f.close()
    40     #如果三次输入错误,把最后一次输入写入到lock.txt
    41     print("Enter the %s is wrong,be locked!" % username)
    login
    作业:多级菜单
    • 三级菜单
    • 可依次选择进入各子菜单
    • 所需新知识点:列表、字典

    一、本程序包含文件:
    1、用户登录.py :主程序
    2、多级菜单.jpg :程序执行流程图
    3、ReadMe.txt :程序说明文档

    二、程序说明:
    执行程序,显示欢迎信息,并自动打印第一层菜单,提示用户输入想要访问菜单名,根据用户输入判断打印下一级菜单,按b返回,按q退出。

    三、用到的知识点:
    input 用户输入
    if 判断
    for 循环
    break 跳出循环
    import 导入模块
    sys sys模块
    sys.exit() 退出程序

    四、流程图

     1 #!/usr/bin/env python
     2 #    -.-    coding: utf-8    -.-
     3 # by sandler
     4 import sys
     5 welcome = '''
     6     ******************************************************************
     7     *                                                                *
     8     *                    33[31m欢迎进入地区信息浏览系统33[0m                    *
     9     *                                                                *
    10     ******************************************************************
    11                                                       33[31m退出请按Q33[0m
    12 '''
    13 index_dic = {
    14     "天津":{
    15         "和平区":["小白楼","劝业场","体育馆"],
    16         "河西区":["挂甲寺","桃园","大营门"]
    17     },
    18     "北京":{
    19         "海淀区":["中关村","五道口","上地"],
    20         "朝阳区":["安贞","国贸","管庄"]
    21     },
    22     "河北":{
    23         "保定":["徐水区","竞秀区","满城区"],
    24         "石家庄":["新华区","长安区","裕华区"]
    25     }
    26 }
    27 print(welcome)
    28 
    29 for i in index_dic:
    30     print(i)    #打印第一层菜单
    31 print ("-------------------------------------------------")
    32 for i in range(3):
    33     shi_input = input("请输入你要查看的地区名字,按q退出: ")
    34     if shi_input == "q":    #判断用户输入是否为“q”,
    35         sys.exit(0) #用户输入“q”退出
    36     if shi_input in index_dic:
    37         qu_name = index_dic[shi_input]
    38         jd_name = qu_name.keys()
    39         while True:
    40             for i in jd_name:   #遍历列表,取出地区名字
    41                 print (i)   #打印第二层菜单
    42             qu_input = input("请输入你要查看的区名字,按b返回,按q退出: ")
    43             if qu_name == "q":
    44                 sys.exit(0)
    45             if qu_input in jd_name: #判断用户输入是否在列表中
    46                 shi_name = index_dic[shi_input][qu_input]
    47                 for i in shi_name:
    48                     print (i)   #打印第三层菜单
    49 
    50             if qu_input not in jd_name: #判断输入是否在列表中
    51                 print ("您输入的信息有误,请重新输入: ")
    52                 continue
    53             back_or_quit = input("已到最后,按b:Back是返回上一级菜单;按q:Exit是退出整个程序: ")
    54             if back_or_quit == "q":
    55                 sys.exit(0)
    56                 break
    57             if back_or_quit == "b":
    58                 continue
    59             print ("您输入的信息有误,请重新输入: ")
    60 else:
    61     print ("3次输入错误,程序退出")
    多级菜单
  • 相关阅读:
    .NET实现Excel文件的读写 未测试
    权限管理设计
    struts1中配置应用
    POJ 2139 Six Degrees of Cowvin Bacon(floyd)
    POJ 1751 Highways
    POJ 1698 Alice's Chance
    POJ 1018 Communication System
    POJ 1050 To the Max
    POJ 1002 4873279
    POJ 3084 Panic Room
  • 原文地址:https://www.cnblogs.com/sandler613/p/5491153.html
Copyright © 2011-2022 走看看