python-if条件判断与while/for循环

条件判断if

  让计算机像人一样,能判断是非对错,根据条件做一些事情。

  if

'''
------ if代码结构:-------
if 条件:
    代码体

tips:同一缩进范围内的代码被视作同一代码体,python官方推荐python缩进一次为4个空格
'''
is_happy = True
if is_happy:
    print("Nice to meet you!")
# Nice to meet you!

  if else

 1 '''
 2 ------ if代码结构:-------
 3 if 条件:
 4     代码体
 5 else:
 6     代码体
 7 
 8 tips:当不满足if 的条件时就会执行到else ,运行else 中的代码
 9 
10 '''
11 is_happy = False
12 if is_happy:
13     print("Nice to meet you!")
14 else:
15     print("Today is a bad day!")
16 # Today is a bad day!

  if elif else

 1 '''
 2 ------ if代码结构:-------
 3 if 条件:
 4     代码体
 5 elif 条件:
 6     代码体
 7 else:
 8     代码体
 9 
10 tips:当不满足if 的条件时就会执行到下一个elif....如果接着的都不满足,那最后执行到else 
11 
12 '''
13 math_score = 99
14 if math_score >= 90:
15     print("优秀")
16 elif math_score >= 80:
17     print("良好")
18 elif math_score >= 60:
19     print("一般")
20 else:
21     print("很遗憾,未及格!")
22 # 优秀

if 嵌套

# if可以多级嵌套,注意缩进
math_score = 99
if math_score >= 90:
    if math_score > 100:
        print("您的输入有误,请输入正确的分数(0~100)!")
    else:
        print("优秀")

循环

  使用循环来替代重复往返的动作

while循环

  while

'''
while 条件:
    代码体
tips:不要忘了 条件后面的 :
      代码体需要缩进4个空格
'''
i = 1
while i < 4:
    print(i)
    i += 1
# 1
# 2
# 3

  死循环

# 死循环,使CPU 一直处于运算状态
i = 1
while True:
    i += 1

# 虽然也是 while True 但因其要等待用户输入信息才进入下一轮循环,并非死循环
while True:
    input("请输入信息")

  while else

 1 # ---------------对于while else 结构:--------------------
 2 # 当while 循环正常循环(执行)完毕没有遇到break 后会进入else 中
 3 
 4 i = 1
 5 while i < 4:
 6     if i == 2:
 7         i += 1
 8         continue
 9     print(i)
10     i += 1
11 else:
12     print("while 循环正常执行结束,没有遇到break 提前退出")
13 
14 # 1
15 # 3
16 # while 循环正常执行结束,没有遇到break 提前退出
17 
18 # 遇到break 退出循环,则不会进入到else 中
19 i = 1
20 while i < 4:
21     if i == 2:
22         i += 1
23         break
24     print(i)
25     i += 1
26 else:
27     print("while 循环正常执行结束,没有遇到break 提前退出")
28 # 1

  break:退出本层循环

  continue:结束本次循环,直接进入下一次循环

 1 i = 1
 2 while i < 6:
 3     if i == 3:
 4         i += 1
 5         break
 6     print(i)
 7     i += 1
 8 print(i)
 9 # 1
10 # 2
11 # 4
12 # 执行到i == 3的if 语句时就退出了整个循环, 后面的i 只到了4 (i == 3 的时候执行了if i == 3 中的 i += 1)
13 
14 i = 1
15 while i < 6:
16     if i == 3:
17         i += 1
18         continue
19     print(i)
20     i += 1
21 print(i)
22 # 1
23 # 2
24 # 4
25 # 5
26 # 6
27 # 执行到i == 3的if 语句时就退出了本次循环,直接重新进入到了 while i < 6 这里开始下一次循环

 

for循环

  for 

'''
------for代码结构:-------
for 条件:
    代码体

tips:  for的末尾要写 :
        不要漏了代码体的缩进(4各个空格)
'''
for i in range(1, 4):
    print(i)
# 1
# 2
# 3

  range()函数

'''
------- range()函数 ---------
python 2.x: range()   xrange()
    调用range()函数会生成一个列表
    调用xrange()函数会生成一个迭代器对象,只有在使用的时候才会取出里面的对象
python 3.x: range()
    同python 2.x 中的 xrange()函数
'''

  break、continue: 与while 循环中一致

  for else:当for 循环正常执行结束没有遇到break 时会进入 else

# ---------------对于for else 结构:--------------------
#   当for 循环正常循环(执行)完毕没有遇到break 后会进入else 中

for i in range(1, 4):
    if i == 2:
        continue
    print(i)
else:
    print("for 循环正常执行结束,没有遇到break 提前退出")

# 1
# 3
# for 循环正常执行结束,没有遇到break 提前退出

# 遇到break 退出循环,则不会进入到else 中
for i in range(1, 4):
    if i == 2:
        break
    print(i)
else:
    print("for 循环正常执行结束,没有遇到break 提前退出")
# 1

多重循环(循环嵌套)

 1 # 退出双层循环的while循环嵌套
 2 user_db = 'abc'
 3 pwd_db = '123'
 4 flag = True
 5 while flag:
 6     inp_user = input('username>>>: ')
 7     inp_pwd = input('password>>>: ')
 8     if inp_user == user_db and pwd_db == inp_pwd:
 9         print('login successful')
10         while flag:
11             cmd = input('请输入你需要的命令:')
12             if cmd == 'q':
13                 flag = False
14                 break
15             print('%s功能执行'%cmd)
16     else:
17         print('username or password error, please input again!')
18 print('退出了while循环')

  技巧:定义标志位 flag 跳出多重循环

转载于:https://www.cnblogs.com/suwanbin/p/11121212.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值