for_else
for循环:按照一定的条件循环执行.
例如:
输入账号和密码登陆,三次以上锁定.
1 #!/usr/bin/env python 2 # -*- coding: utf-8 -*- 3 ' for loop test ' 4 __author__ = 'Fade Zhao' 5 6 name = "Fade Zhao" 7 PassWord = "999" 8 9 for i in range(3): 10 userName = input("UserName:") 11 passWord = input("PassWord:") 12 if name == userName and PassWord == passWord: 13 print("welcome come %" % userName) 14 break 15 else: 16 print("账号或密码错误") 17 else: 18 print("你已经被锁定,请明天再来")
第1行:#注释可以让这个文件直接在Unix/Linux/Mac上运行;
第2行:#注释表示.py文件本身使用标准UTF-8编码;
第3行:表示模块的文档注释,任何模块代码的第一个字符串都被视为模块的文档注释;
第4行:使用__author__
变量把作者写进去,这样当你公开源代码后别人就可以...23333;
第6、7行:是生命变量并赋值.
第9行:是for循环的开始,其中range()的用法简单记录一下:
>>> range(1,5) #代表从1到5(不包含5) [1, 2, 3, 4] >>> range(1,5,2) #代表从1到5,间隔2(不包含5) [1, 3] >>> range(5) #代表从0到5(不包含5) [0, 1, 2, 3, 4]
range()会生成一个list,其中变量 i 将从第一个元素接收每一个元素的值。‘ :’代表着for循环的开始。
第10-16行:就是for循环的代码块,一般语言都是通过{}来表示代码块,而在Python中是通过缩进来识别代码块的,其实缩进几个空格或者tab都是可以的,但是必须要保持一致性(如果最开始用空格,那就一直用空格,一般为了方便阅读都是用tab来进行缩进) 缩进的一致性是为了避免程序运行时报错。
第10-11行:是表示从控制台输入字符赋值给变量 name、passWord.
>>> name = input("Name:") Name:alex >>> print(name) alex
其中密码是不需要显示的,这时候就要用到"getpass"模块:
>>> from getpass import getpass >>> passWord = getpass("PassWord:") PassWord: >>> print(passWord) 999
第12行: if是条件判断语句,只有if的条件成立(表达式的值为真)后,才会执行if部分的代码,否则将会执行else的代码;
第14行:break 代表跳出循环表示循环结束,相应的continue是表示跳出本次循环,继续下次循环;
第17行:else是表示for-else,表示循环失败,是在for循环完整完成后才执行else;如果中途从break跳出,则连else一起跳出。