python习题 (1):login

#!/uer/bin/env python
# _*_ coding: utf-8 _*_

import sys
retry_limit = 3
retry_count = 0
account_file = ‘accounts.txt‘
lock_file = ‘account_lock.txt‘

while retry_count < retry_limit:                             #循环体限制3次内执行

    username = raw_input(‘\033[32; Username : \033[0m‘)  #输入用户名
    lock_check = open(lock_file)                             #打开锁定文件
    for line in lock_check.readlines():
        line = line.split()                                #循环锁定文件跟输入的用户名比对
        if uesrname == line[0]:                             #判断用户输入的用户名和lock文件的用户名第一元素==
            sys.exit(‘\031[31; User %s is locked!\033[0m‘  %username)

    password = raw_input(‘\033[32; Password : \033[0m‘)   #输入pass
    f = file(account_file,‘r+‘)
    match_flag = False
    for line in f.readlines():                             #循环acc文件,
        user,password = lin.strip(‘\n‘).split()            #把accounts文件拆分过滤 换行符,赋值给user,和pss变成列表
        if username == user and password == password:      #判断:输入的use等于acc里user 且 输入的pss等于列表里的pss
            print(‘Match!‘),username
            match_flag = True
            break
    f.close()

    if match_flag == False:                                 #判读标志位,默认不匹配。
        #判断用户输入的user和pass是否与文件匹配,不配就继续循环,匹配上了就退出。
        print ‘User unmatched!‘
        retry_count +=1
    else :
        print(‘Welcom to in feifei blog system!‘)
else:
    print("You account is locked!")
    f =file(lock_file,‘ab‘)
    f.write(username)
    f.close()

编写登陆接口

1.输入用户名密码

2.认证成功后显示欢迎信息

3.输错三次后锁定

时间: 2024-08-13 10:21:16

python习题 (1):login的相关文章

笨办法学Python - 习题3: Numbers and Math

Exercise2是注释和井号 Comments and Pound Characters 具体详情请参考习题一,这里就不在做过多的赘述. 习题 3: 数字和数学计算 学习目标:了解Python中常用的算术运算符,并了解运算符之间的先后运算顺序 在各大常用的计算机语言中都有常见的算术运算符,Python也是大同小异,下面我们来了解一下Python中常见的算术运算符: 算术运算符 以下假设变量x = 10 ,y = 20 运算符 描述 实例 + 加 - 两个对象相加 x+y = 30 - 减 -

笨办法学Python - 习题8-10: Printing &amp; Printing, Printing

目录 1.习题 8: 打印,打印 2.习题 9: 打印,打印,打印 3.习题 10: 那是什么? 3.1.转义序列: 4.习题总结: 1.习题 8: 打印,打印 学习目标:继续学习 %r 的格式化输出. 习题八中的练习代码是: #! -*-coding=utf-8 -*- formatter = "%r %r %r %r %r " print formatter % (1, "hello", [1,2,3], (1,2,3), {"name":&

python习题20190130

#encoding=utf-8 ''' 一家商场在降价促销.如果购买金额50-100元(包含50元和100元)之间,会给10%的折扣,如果购买金额大于100元会给20%折扣.编写一程序,询问购买价格,再显示出折扣(10%或20%)和最终价格 ''' def print_zekou(): aount = int(input("请输入你购买的金额:")) if aount < 50: print("不好意思你购买的金额没有折扣,需要支付的金额为:",aount)

python习题练习(chapater 5 -- python核心编程)

更新中... #!/usr/bin/env python# coding: utf-8'for practise in chapater five' #定义一个函数,计算并返回两个数的乘机def product(a, b): return(a * b) #根据分数输出同学的评分成绩(A-F)def score(i): if (i > 90) & (i < 100):  return('A') elif (i > 80) & (i < 89):  return('B'

python--笨方法学python 习题52

笨方法学python是一本不错的python入门书籍.书的最后一节是一个web版的游戏程序,以下是程序代码: 1.项目的目录结构如下所示:skeleton\ app.py map.py templates\ layout.html show_room.html you_died.html 2.游戏地图结构 map.py其中Room类是游戏场景,包括场景名称 name,描述 description,通往下一场景的可能路径集合 paths. 定义了游戏中设计到的7个场景. # -*- coding:

python习题

#习题1 #a:实现用户输入用户名和密码,当用户名为seven且密码为123时,显示登录成功,否则登录失败! while 1: name = input('请输入用户名: ') psw = input('请输入密码: ') if name == 'seven' and psw == '123': print('登陆成功') break else: print('登陆失败') break #b实现用户输入用户名和密码,当用户名为seven且密码为123时,显示登录成功,否则登录失败,失败时允许重复

笨方法学Python——习题40

之前例子讲过关于字典.列表.字符串.元组,按书中所述,其实这些已经足够写一些代码,但Python属于面向对象的编程语言,本节所讲的类,是必须要掌握的,虽然现在有些懵逼 1 class Song(object): 2 3 def __init__(self, lyrics): 4 self.lyrics = lyrics 5 6 def sing_me_a_song(self): 7 for line in self.lyrics: 8 print line 9 10 happy_bday = S

python习题--列表的遍历

习题一: # 比较两个列表中的元素,找出不相同的元素并保存在列表3中 L1 = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"] L2 = ["Sun", "Mon", "Tue", "Tue", "Thu", &quo

python习题12

ex12 1 age = input("How old are you?") 2 height = input("How tall are you?") 3 weight = input("How much do you weight?") 4 5 print(f"So,you're {age} old, {height} tall and {weight} heavy.") 在终端上键入python -m pydoc inp