您的位置:首页 > 编程语言 > Python开发

python循环与判断

2016-07-26 20:33 369 查看

学习一门新的语言最重要的就是练习。

一、脚本需求:

编写登陆接口

输入用户名密码

认证成功后显示欢迎信息

输错三次后锁定

二、脚本流程图:

写代码之前画个流程图总是好的,可以让你理清思路,避免写着写着代码出现懵逼的情况。



三、思路,遇到的坑。

1、由于虽然我知道有字典,或者是调用数据库的函数,但是我决定用最简单的方式来存放正确的用户名密码,放入一个文本文件中。

2、用户名与密码,是两个独立的字符串,对于效验来说有一定的难度。于是我在存放的时候把它俩加在了一起,变成了“用户名密码”。

3、获取输入的用户名密码后,同样把用户名与密码拼接为“用户名密码”,来与文件中记录的来进行逐行对比。

4、坑!记录的文件中有换行符\n,也就是说“用户名密码\n”,但是输入的却没有“用户名密码”,导致字符串效验总是失败。

5、通过strip("\n")来去掉换行符。

四、源代码

# Cheng
count = 0
while count < 3:
login = '''
Hellow welcome to login qqzone!
'''
login2 = '''
Try again
'''
if count == 0:
print(login)
else:
print(login2)
user = input("please input your name")
passwd = input("please input your password")
accept = str(user + passwd)
for line in open("C:\\Users\\CH\\Desktop\\file.txt"):
line = line.strip("\n")
if accept == line:
print("Welcome to login QQzone",user)
exit()
break
else:
continue
print("Your password or username is wrong")
count +=1
if  count == 3:
print("fuck off")


打开的文件的内容

kerwin123456
duckabcdefg
roucewsb


五、python中循环的特点以及语法

for循环

例子

for line in open("C:\\Users\\CH\\Desktop\\file.txt"):
line = line.strip("\n")
if accept == line:
print("Welcome to login QQzone",user)
exit()
break
else:
continue


for 开头和其他语言的没什么区别,python中for,if,while循环的第一句结尾必须要有个冒号。

python通过强制缩进来控制层级关系,利用这个缩进,省略了比如shell中的fi,done,等。

if循环

if accept == line:
print("Welcome to login QQzone",user)
exit()
break
else:
continue


这里面写到了break,continue,和exit()。

break的意思是跳出循环,continue的意思是跳出循环的当前次,进入下一次,exit()的意思是,退出脚本,详细的就不多介绍。


while循环

例子请见文章开头的第一个登陆脚本。

脚本中开头定格就是一个while循环,以后的内容都通过tab缩进,并不顶格,代表其余的所有代码都是运行在这个while循环中。这也可以让你理解一下python的强制循环的意义。

谢土豪

如果有帮到你的话,请赞赏我吧!

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: