Python判断循环语法

Posted 赵广陆

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python判断循环语法相关的知识,希望对你有一定的参考价值。

目录


最近想突破一下学习人工智能的机算机视觉CV和自然语言处理NLP,喜欢研究人工智能的也可以关注下我,先从基础开搞,复盘了一下自己对于python学习,虽然有java基础python语法看一眼就会了,但是还要产出相应的文档方便复习。

1 if 语法

if 条件:
 条件成⽴执⾏的代码1
 条件成⽴执⾏的代码2
 ......
if True:
 print('条件成⽴执⾏的代码1')
 print('条件成⽴执⾏的代码2')
# 下⽅的代码没有缩进到if语句块,所以和if条件⽆关
print('我是⽆论条件是否成⽴都要执⾏的代码')

执行结果如下:

2 if…else…

if 条件:
 条件成⽴执⾏的代码1
 条件成⽴执⾏的代码2
 ......
else:
 条件不成⽴执⾏的代码1
 条件不成⽴执⾏的代码2
 ......
if 条件1:
 条件1成⽴执⾏的代码1
 条件1成⽴执⾏的代码2
 ......
elif 条件2:
 条件2成⽴执⾏的代码1
 条件2成⽴执⾏的代码2
 ......
......
else:
 以上条件都不成⽴执⾏执⾏的代码

多重判断也可以和else配合使⽤。⼀般else放到整个if语句的最后,表示以上条件都不成⽴的时候
执⾏的代码

if 条件1:
 条件1成⽴执⾏的代码
 条件1成⽴执⾏的代码

 if 条件2:
 条件2成⽴执⾏的代码
 条件2成⽴执⾏的代码

注意:条件2的if也是出于条件1的缩进关系内部。这里就和java差好多了

3 三目运算符

三⽬运算符也叫三元运算符或三元表达式。
语法如下:

条件成⽴执⾏的表达式 if 条件 else 条件不成⽴执⾏的表达式
a = 1
b = 2
c = a if a > b else b
print(c)

运行结果

4 while的语法

循环的作⽤:让代码更⾼效的重复执⾏。
在Python 中,循环分为 while 和 for 两种,最终实现效果相同。

while 条件:
  条件成⽴重复执⾏的代码1
  条件成⽴重复执⾏的代码2
  ...... 

示例代码:

需求:执行 5 次 print(’ 媳妇⼉,我错了 ’ )。
分析:初始值是 0 次,终点是 5 次,重复做的事情输出 “ 媳妇⼉, 我错了 ” 。

# 循环的计数器
i = 0
while i < 5:
    print('你好啊世界')
    i += 1
print('任务结束')

运行结果

4.1 while循环嵌套

语法:

while 条件1:
  条件1成⽴执⾏的代码
  ......
  while 条件2:
    条件2成⽴执⾏的代码
    ......

总结:所谓while循环嵌套,就是⼀个while⾥⾯嵌套⼀个while的写法,每个while和之前的基础语法是相同的。
示例代码:

j = 0
while j < 2:
    i = 0
    while i < 3:
        print('你好世界')
        i += 1
    print('外层循环')
    print('⼀层结束----------------')
    j += 1

执⾏流程:当内部循环执⾏完成之后,再执⾏下⼀次外部循环的条件判断。

执行结果

4.2 while中使用break和continue

break和 continue 是循环中满⾜⼀定条件退出循环的两种不同⽅式。

举例:⼀共吃 5 个苹果,吃完第⼀个,吃第⼆个 … ,这⾥ " 吃苹果 " 的动作是不是重复执⾏?
情况⼀:如果吃的过程中,吃完第三个吃饱了,则不需要再吃第 4 个和第五个苹果,即是吃苹果的动作停⽌,这⾥就是break 控制循环流程,即 终⽌此循环 。
情况⼆:如果吃的过程中,吃到第三个吃出⼀个⼤⾍⼦ …, 是不是这个苹果就不吃了,开始吃第四个苹果,这⾥就是continue 控制循环流程,即 退出当前⼀次循环继⽽执⾏下⼀次循环代码 。

4.2.1 break

i = 1
while i <= 5:
    if i == 4:
        print(f'吃饱了不吃了')
        break
    print(f'吃了第i个苹果')
    i += 1

4.2.2 continue

i = 1
while i <= 5:
    if i == 3:
        print(f'⼤⾍⼦,第i个不吃了')
        # 在continue之前⼀定要修改计数器,否则会陷⼊死循环
        i += 1
        continue
    print(f'吃了第i个苹果')
    i += 1

5 for循环

语法:

for 临时变量 in 序列:
   重复执⾏的代码1
   重复执⾏的代码2
   ......

示例代码:

str1 = 'zhangsan'
for i in str1:
    print(i)

运行结果

5.1 for中使用break和continue

5.1.1 break

str1 = 'zhangsan'
for i in str1:
    if i == 's':
        print('遇到s不打印')
        break
    print(i)

运行结果

5.1.2 continue

str1 = 'zhangsan'
for i in str1:
    if i == 's':
        print('遇到s不打印')
        continue
    print(i)

6 else

循环可以和else 配合使⽤, else 下⽅缩进的代码指的是 当循环正常结束之后要执⾏的代码 。

6.1 while…else

语法:

while 条件:
  条件成⽴重复执⾏的代码
else:
  循环正常结束之后要执⾏的代码

示例代码:

i = 1
while i <= 5:
    print('你好世界')
    i += 1
else:
    print('世界真大')

运行结果

6.2 while…else使用break和continue

6.2.1 break

i = 1
while i <= 5:
    if i == 3:
        print('你好世界')
        break
    print('世界好大')
    i += 1
else:
    print('你才是我的唯一')

运行结果

所谓 else 指的是循环正常结束之后要执⾏的代码,即如果是 break 终⽌循环的情况, else 下⽅缩进的代码将不执⾏。 即使循环的最后一个遇到break,此时else也不会执行

6.2.2 continue

i = 1
while i <= 5:
    if i == 3:
        print('你好世界')
        i += 1
        continue
    print('世界好大')
    i += 1
else:
    print('你才是我的唯一')

因为 continue 是退出当前⼀次循环,继续下⼀次循环,所以该循环在 continue 控制下是可以正常结束的,当循环结束后,则执⾏了else 缩进的代码。 【即使循环的最后一次执行遇到continue,也会执行else】

6.3 for…else

语法 :

for 临时变量 in 序列:
  重复执⾏的代码
  ...
else:
  循环正常结束之后要执⾏的代码

所谓 else 指的是循环正常结束之后要执⾏的代码,即如果是 break 终⽌循环的情况, else 下⽅缩进的代码将不执⾏。
示例代码:

str1 = 'hello'
for i in str1:
    print(i)
else:
    print('循环正常结束之后执⾏的代码')

运行结果

6.4 for…else使用break和continue

6.4.1 break

str1 = 'hello'
for i in str1:
    if i == 'l':
        print('遇到l不打印')
        break
    print(i)
else:
    print('循环正常结束之后执⾏的代码')

没有执⾏else缩进的代码。

6.4.2 continue

str1 = 'hello'
for i in str1:
    if i == 'l':
        print('遇到l不打印')
        continue
    print(i)
else:
    print('循环正常结束之后执⾏的代码')

因为 continue 是退出当前⼀次循环,继续下⼀次循环,所以该循环在 continue 控制下是可以正常结束的,当循环结束后,则执⾏了else 缩进的代码。

以上是关于Python判断循环语法的主要内容,如果未能解决你的问题,请参考以下文章

IT兄弟连 Java语法教程 流程控制语句 循环结构语句2

JavaScript循环语句-6

Python 基础 2022 最新第四课 基础语法

Python 基础 2022 最新第四课 基础语法

Python 基础 2022 最新第四课 基础语法

for循环执行顺序?