Python 之 for 循环 range 的使用,升级版用户登录程序
·
比如要打印 1 到 10 之间的奇数:
代码如下
#!/usr/bin/env python
for i in range(1,11):
if i%2 == 1: #取余 等于1的
print(i)
打印结果为: 1 3 5 7 9
这里要先知道一个知识点,就是range ,我们可以在python 2.x 中,
直接输入 range(3)
返回结果为: (0, 1, 2) 三个数字,这有点类似与数组的意思,暂可以这样理解,
而range 也可以指定范围
直接输入 range(1,3)
返回结果为: (1, 2) 两个数字。
还有一个知识点,就是range(1, 11, 2)
这里的2 是步长的意思,就是从1开始,每次增加2 显示,且值不超过 10.
代码如下:
for i in range(1, 11, 2):
print(i)
打印结果为: 1 3 5 7 9
升级版用户登录程序
支持3次尝试:
代码如下:
#!/usr/bin/env python
_user = "jackie" #定义初始用户名
_passwd = "cib123" #定义初始用户密码
for i in range(3): #限定循环四次
username=input("Username: ")
password=input("Password: ")
if username == _user and password == _passwd:
print("Welcome %s login ..." % _user) #占位符的使用
break #如果输入正确就跳出当前循环体
else:
print("Invalid username or password !")
结果如下:
Username: sflasjd
Password: cib123
Invalid username or password !
Username: jackie
Password: cib123
Welcome jackie login ...
Process finished with exit code 0
完善用户登录
要求,我们在三次登录失败之后打印一句话,成功不打印
代码修改如下:
#!/usr/bin/env python
_user = "jackie"
_passwd = "cib123"
passed_authentication = False #作用类似标志位
for i in range(3): #限定循环四次
username=input("Username: ")
password=input("Password: ")
if username == _user and password == _passwd:
print("Welcome %s login ..." % _user) #占位符的使用
passed_authentication = True
break
else:
print("Invalid username or password !")
if not passed_authentication:
print("你尝试太多次了 。。。")
新增变量 passed_authentication , 初始值为 False,如果成功登录,则赋值 True, 然后if 判断即可。
passed_authentication : 又被称为 标志位 ,是一个标志,根据这个标志做判断
简洁版用户登录
_user = "jackie"
_passwd = "cib123"
for i in range(3): #限定循环四次
username=input("Username: ")
password=input("Password: ")
if username == _user and password == _passwd:
print("Welcome %s login ..." % _user) #占位符的使用
break
else:
print("Invalid username or password !")
else: #只要上面的for 循环正常结束,没有被break,就会执行下面的 else
print("你尝试太多次了 。。。")
结束
^ - ^ ....
更多推荐



所有评论(0)