目录
1.分支结构-if
1.格式:
if 条件1: # 如果条件1的结果为True,就依次执行:代码1、代码2,......
代码1
代码2
......
elif 条件2: # 如果条件2的结果为True,就依次执行:代码3、代码4,......
代码3
代码4
......
elif 条件3: # 如果条件3的结果为True,就依次执行:代码5、代码6,......
代码5
代码6
......
else: # 其它情况,就依次执行:代码7、代码8,......
代码7
代码8
2.应用:登录流程判断
user_name = "zcy"
password = "123456"
in_name = input("请输入你的账号")
in_password = input("亲输入你的密码")
if user_name == in_name and password == in_password:
print("登陆成功")
else:
print("输入的账号或密码错误")
2.循环结构:while
1.格式:
while 条件:
代码1
代码2
代码3
while的运行步骤:
步骤1:如果条件为真,那么依次执行:代码1、代码2、代码3、......
步骤2:执行完毕后再次判断条件,如果条件为True则再次执行:代码1、代码2、代码3、......,如果条件为False,则循环终止
2.应用场景:三次密码冻结
user_name = "zcy"
password = "123456"
count = 3
while count > 0:
in_name = input("请输入你的账号:")
in_word = input("请输入你的密码:")
count -= 1
if in_name == user_name and in_word == password:
print("登录成功")
break # while+break 结束本层循环
elif count == 0:
print("你输入账号密码错误过多,账号已冻结")
break
else:
print("输入账号或密码错误,你还剩{sy}次机会".format(sy=count))
3.套两层循环:
在外设固定值:tag = true,
通过while tag:进行循环,
在结束循环处tag = false,跳出循环
4.while+continue:结束本次循环,直接进入下一次
打印1,2,3,5
count1 = 0
while count1 < 6:
if count1 == 4:
count1 += 1
continue
print(count1)
count1 += 1
5. while+else的使用
当while 循环正常执行完并且中间没有被break中止的话,就会执行else后面的语句
应用:用else来验证,循环是否正常结束(例三次密码冻结)
user_name = "zcy"
password = "123456"
count = 3
while count > 0:
in_name = input("请输入你的账号:")
in_word = input("请输入你的密码:")
count -= 1
if in_name == user_name and in_word == password:
print("登录成功")
else:
print("输入账号或密码错误,你还剩{sy}次机会".format(sy=count))
else:
print("你输入账号密码错误过多,账号已冻结")
3.循环结构:for
1.理论上for循环能做的事,while循环也能做
之所以要有for循环,是因为在循环取值(遍历取值)比while循环更简洁
终止for循环只有break
2.格式:
for循环语法:
for 变量名 in 可迭代对象:
代码1
代码2
代码3
可迭代对象可以是:列表,字典,字符串,元组,集合
3.应用场景
(1)列表循环取值:
for:
l1 = ['jkdfk', 'dff', 'dfaccd']
for x in l1:
print(x)
while:
l1 = ['jkdfk', 'dff', 'dfaccd']
i = 0
while i < 3:
print(l1[i])
i += 1
(2)字典循环取值:
for:
dic1 = {'k1': 1, 'k2': 2, 'k3': 3}
for k in dic1:
print(k, dic1[k])
while:
也可以遍历字典,太麻烦了
(3)字符串循环取值:
msg = 'you can you up, no can no bb'
for j in msg:
print(j)
4.总结for与while的异同:
相同:都是循环,for循环可以干的事,while循环也可以干
不同:while循环称为条件循环,循环次数取决于条件何时变假
for循环称为 取值循环,循环次数取决于in后面的值的个数
for n in range(3):
print("===")
5.for+else的使用:
当while 循环正常执行完并且中间没有被break中止的话,就会执行else后面的语句
所以我们可以用else来验证,循环是否正常结束
例子:3次输入密码
uer_name = "zcy"
password = "123456"
for m in range(3):
in_name = input("请输入你的账号:")
in_word = input("请输入你的密码:")
if in_name == uer_name and in_word == password:
print("登陆成功")
break
else:
print("账号或密码错误,请重新输入")
else:
print("输入账号密码错误次数过多,账号冻结")
6.range补充
技巧打印列表个数
l1 = ["afd", "af", "afa", "af"]
for p in range(len(l1)):
print(p)
7.for+continue:跳过本次循环
例子:打印0 1 2 4 5
for q in range(0, 6):
if q == 3:
continue
print(q)
8.for嵌套
for s in range(3):
print("外层循环===>", s)
for d in range(5):
print(" 内层循环==>", d)
9.print默认换行,end默认为换行 空格为空格连接
print("hello")
print("word")
print("hello", end=" ")
print("word")