if else流程判断:
基本语法是:如下的例子:
_username = "sutrpz"
_passwaord = "abc123"
username = input("name: ")
password = input("password: ")
if _username == username and _passwaord == password:
print("Welcome user ({name}) login...".format(name=username))
else:
print("invalid username or password!")
如果条件成的话,执行后面的语句,如果不成立,则不执行或者执行else后面的语句。
注意:执行语句需要缩进,如果不缩进,会出现不可预料的结果。
如果遇到多重条件判断,则使用elif结构。
如下,是一个猜密码的游戏,根据猜对,猜大,猜小分别输出对应的语句。
guess_age = 56;
guess_age = int(input("Please input guess age: "))
if age_boss == guess_age:
print("yes, you got it.")
elif age_boss > guess_age:
print("think, maybe bigger")
else:
print("think, maybe less")
(注意:格式的转换,使用内置函数将输入的字符串转换成整数。)
While循环语句
基本如法如下:
Count = 0
whilee True:
print("count:",count)
count +=1
以上是个无限循环的语句。
我们将上面的猜密码的程序增加一个只能猜3次的限制,使用条件成立语句:
age_boss = 56
count = 0
while count <3:
guess_age = int(input("Please input guess age: "))
if age_boss == guess_age:
print("yes, you got it.")
break
elif age_boss > guess_age:
print("think, maybe bigger")
else:
print("think, maybe less")
count +=1
print("you have tried too many times...")
此时,无论前面是否猜的对,最后一句话都会执行,与我们想要的结论不符合,我们希望的是如果猜对的话,最后一句不执行。
有两种方式:
在最后一句前面增加语句:
if count == 3
或者直接增加:
else如果每循环3次,提醒一下是否继续猜数字,完整的程序如下:
boss_age = 56
count =0
while count <3:
guess_age = int(input("please guess your boss age: "))
if guess_age == boss_age:
print("Yes, you got it!")
break
elif guess_age > boss_age:
print("think smaller")
else:
print("think bigger")
count +=1
if count == 3:
conti =input ("you tried 3 times already, do you want to guess again?")
if conti == "y":
count == 0
else:
print("you tried too many times...")
for 循环语句
for基本语法:
for i in range(10):
print("loop", i)
如果将以上的猜年龄程序修改为for 语言:
for i in range(3):
break
else:这里的else是for正常走完程序以后执行else,break后就不再else语句。
range函数的应用:
for i in range(0,10,3):
从第一个数开始,第二个数结束,第三个数是中间间隔数,默认是1。