9、python判断语句与循环语句

时间:2022-12-03 13:32:43

前言:本文主要介绍python判断语句与循环语句,包括if语句、while循环、for循环、range函数。

一、if语句


关键字:if、elif、else,写法如下:

# if
if 条件: # (条件可以是任意表达式)
# 条件成立,执行此处代码,条件不成立,跳过此处代码,继续往下执行其他diamante # if -- else
if 条件:
# 条件成立,执行此处代码,后面的else语句不会执行
else:
# 条件不成立,执行此处代码 # if -- elif -- else
if 条件一:
# 条件一成立,执行此处代码,后面的elif语句和else语句都不会执行
elif 条件二:
# 条件一不成立,条件二成立,执行此处代码,后面的elif语句和else语句都不会执行
elif 条件三:
# 条件二不成立,条件三成立,执行此处代码,后面elif语句和else语句都不会执行
else:
# 以上条件都不成立,执行此处代码

以下是实例:

a = [1,2,3]
b = 5 if b == 5: # 注意一个=是赋值,两个等号是比较运算符
print('这是测试1') if b>2:
print('这是测试2')
else:
print('这是测试3') if 1 in a:
print('这是测试4')
elif 2 in a:
print('这是测试5')
elif 3 in a:
print('这是测试6')

运行结果:

C:\software\python\python.exe D:/myworkspace/test/test/test.py
这是测试1
这是测试2
这是测试4 Process finished with exit code 0

注意:一个if语句中,只能有一个if,elif可以没有或者有多个,else可以没有或者只能有一个

二、while循环


关键字:whille,格式如下

while 条件:

  # 需要循环执行的代码

条件可以是任意表达式,只要为True就会执行while语句中的代码

注意:条件一定要设置能终止程序的条件,防止死循环

a = 10
while a > 1: # 当a<1时循环结束
print('条件成立,这里是循环体中的代码,当前a的值是',a)
a -= 1

运行结果:

C:\software\python\python.exe D:/myworkspace/test/test/test.py
条件成立,这里是循环体中的代码,当前a的值是 10
条件成立,这里是循环体中的代码,当前a的值是 9
条件成立,这里是循环体中的代码,当前a的值是 8
条件成立,这里是循环体中的代码,当前a的值是 7
条件成立,这里是循环体中的代码,当前a的值是 6
条件成立,这里是循环体中的代码,当前a的值是 5
条件成立,这里是循环体中的代码,当前a的值是 4
条件成立,这里是循环体中的代码,当前a的值是 3
条件成立,这里是循环体中的代码,当前a的值是 2 Process finished with exit code 0

while循环中的break和continue

break:终止循环,跳出循环体

continue:中止当前本轮循环,开启下一轮循环

a = 10
while True:
print('条件成立,这里是循环体中的代码,当前a的值是',a)
a -= 1
if a < 8: # 如果a<8就会终止循环
print('循环结束')
break b = 0
while True:
b += 1
if b == 3: # 如果b等于3时就会跳出本次循环,开启下一轮循环
continue
else:
print('条件成立,这里是循环体中的代码,当前b的值是', b)
if b >= 5:
print('循环结束')
break

运行结果:

C:\software\python\python.exe D:/myworkspace/test/test/test.py
条件成立,这里是循环体中的代码,当前a的值是 10
条件成立,这里是循环体中的代码,当前a的值是 9
条件成立,这里是循环体中的代码,当前a的值是 8
循环结束
条件成立,这里是循环体中的代码,当前b的值是 1
条件成立,这里是循环体中的代码,当前b的值是 2
条件成立,这里是循环体中的代码,当前b的值是 4
条件成立,这里是循环体中的代码,当前b的值是 5
循环结束 Process finished with exit code  

while循环中的else

循环条件不成立,退出循环执行else中的代码,如果使用break跳出循环,不会执行else中的代码

n = 1
while n < 10:
print('这是第{}次循环'.format(n))
if n == 5:
break
n += 1
else:
print('while循环对应的else')

运行结果:

C:\software\python\python.exe D:/myworkspace/test/test/test.py
这是第1次循环
这是第2次循环
这是第3次循环
这是第4次循环
这是第5次循环 Process finished with exit code 0

三、for循环


关键字:for

for循环可以遍历任何序列的项目,格式如下

for x in xxx:

  # 循环遍历xxx的代码

注意

  • 通过遍历的对象来控制循环次数
  • 遍历完毕就循环完毕
  • for循环中的break和continue同样适用
li = ["张三", "李四", "王五"]
for name in li:
print(name) print("------分割线-------")
# 直接遍历字典:得到的是字典的键
dic = {"name":"zhangsan", "age":18, "city":"guangzhou"}
for i in dic:
print(i) print("------分割线-------")
# 遍历字典的键值对
for k, v in dic.items():
print(k, v)

运行结果:

C:\software\python\python.exe D:/myworkspace/test/test/test.py
张三
李四
王五
------分割线-------
name
age
city
------分割线-------
name zhangsan
age 18
city guangzhou Process finished with exit code 0

四、range()函数


range()是python的一个内置函数,在自动化测试中经常会用到这个函数,也常结合循环使用,用于控制循环次数

  • range(n):默认生成一个 0到n-1的整数序列,对于这个整数序列,我们可以通过list()函数转化为列表类型的数据。
  • range(n,m):左闭右开默认生成一个n到m-1的整数序列,对于这个整数序列,我们可以通过list()函数转化为列表类型的数据。
  • range(n,m,k):左闭右开相当于其他函数里面的for循环。n 初始值 m 结束值 k 步长,会生成初始值为n,结束值为m-1,递减或者是递增的整数序列。
# 遍历range,会从0开始,一直到99,打印100遍后就会停止,但也可以用break和continue控制循环
for i in range(100):
print(i)
print('第{}遍,hello python'.format(i + 1))
if i >= 4:
break

运行结果:

C:\software\python\python.exe D:/myworkspace/test/test/test.py
0
第1遍,hello python
1
第2遍,hello python
2
第3遍,hello python
3
第4遍,hello python
4
第5遍,hello python Process finished with exit code 0