Python接口自动化测试框架(基础篇)-- 流程控制之循环语句for&while

简介: 本文介绍了Python中的循环语句,包括while和for循环的使用,range()函数的运用,以及continue、break和pass关键字的说明,同时提出了关于while循环是否能与成员运算符结合使用的思考。

前言

很开心,python学到循环语句了,也越来越好玩了,学到这儿,基本上也能处理一些流水线的工作了,只是稍欠装饰显得不那么灵活、复用性不高。

image.png

循环语句

python中循环语句有for和while;如上图所示,循环基本都需要做点什么,因为不是需要所有数据,也会带上if条件控制一下输出。

while循环

一般句式

# 作为条件,为True才执行里面的代码块,为false则退出循环
while (condition): 
    print("执行语句")

提示一下:python中没有do…while循环

  • 似乎python大多数使用者,没有使用while…else这样的条件
while False:
    print("不会被执行")
else:
    print("当while条件为False时才执行")
  • 示例:求1-100之间的和, 就使用while循环来完成
dig=100

sum=0
count=1
while count <=dig:
    sum+=count
    count+=1

print("1到{}之间的和为:{}".format(dig,sum))
# 输出结果:1到100之间的和为:5050
  • 代码浅析:

    • count作为while循环的计数器,它不能超过目标值dig;否则退出循环,而sum+=count,每次都会sum+count之后重新赋给sum
  • 当然这是咱们学习之后的成果,那怎么确定结果是正确的呢?

    • 两个办法,自己拿笔算一算,开什么玩笑;当然是找规律啦,除去100和50,首尾相加得100的数有49对,如:1+99、2+98、3+97,以此类推,直到49+51,也就是按顺序会有49对首尾相加得100,再加上100+50,可不就是5050
    • 第二个方法自然是用程序来验证,python提供了sum()、range()函数,这里需要批评一下了,在上面的例子中使用了sum=0,也就是它会覆盖了原来的sum()函数,所以在当前代码块中不能使用sum()函数来求和。
# sum()函数接的参数必须是可迭代类型,str除外
s=sum(range(1,101))

print(s) # 输出:5050

# 后面在内置函数再介绍range函数
  • while True: 这个循环有一个特殊场景,就是在客户端需要实时请求,无限循环则非常有用。
for循环

这是个有点特殊的循环,因为它是for…in的组合,in是啥?咱们的成员运算符啊,其实for就是while,只不过condition换成了x in xxx:而已,所以它不能是for True却能x in xxx;思考一下:while 能不能搭配 x in xxx呢?

  • for循环遍历list或者字符串等序列类型
a="1234567"

for i in a:
    print(i)
# 输出:
1
2
3
4
5
6
7
  • for循环经常跟range()函数混在一起;range()函数是一个左闭右开的条件函数
for i in range(5):
    print(i)

# 输出:
0
2
3
4
range()函数
  • range()函数默认从0开始,可以指定区间:range(1,5)
for i in range(1,5):
    print(i)

# 输出:
1
2
3
4
  • 再回忆之前说的str、tuple、list类型对于切片取值的的公式:(nⓂ️k),只不过在range中需要变成逗号:range(n,m,k),m>n,k为步长
# 奇数
for i in range(1,10,2):
    print(i)

# 输出:
1
3
5
7
9
continue和break

字面意思,一个是continue继续循环,一个break是中断循环

  • 前面举例说while True: 是个无限循环,如果配以if条件控制,当满足条件时break跳出循环
# cmd进入python交互命令模式

>>> count=1
>>> while True:
...     print(count)
...     if count==4:
...         print(count)
...         break
...     count+=1
...
1
2
3
4
4
  • 上面的例子如果换成continue,那么就无限循环,它还没中止,自己就终止了。
  • 注意1:所有从for或while跳出的循环都不会再执行后面的else;
  • 注意2:continue和break的位置如果在某块代码前,那么它后面的代码不会被执行。

i = 1
while i < 10:
    if i == 3:
        continue  
        # 不会执行后面的i+=1,i永远是3,然后就在这里无限循环
        print("执行不到")
    i+=1
  • 所以要想 它继续,就在continue之前加入条件:i+=1
# cmd输入python进入交互模式:

>>> i = 1
>>> while i < 10:
...     print(i)
...     if i == 3:
...         i += 1
...         continue
...         print("执行不到的语句")
...     print("当i==3,这句不执行,{}".format(i))
...     i += 1
...
1
当i==3,这句不执行,1
2
当i==3,这句不执行,2
3
4
当i==3,这句不执行,4
5
当i==3,这句不执行,5
6
当i==3,这句不执行,6
7
当i==3,这句不执行,7
8
当i==3,这句不执行,8
9
当i==3,这句不执行,9

# 是不是漏掉了i==3的那句不执行!!!
  • break关键字也来一个例子:
# cmd输入python进入交互模式

>>> i = 1
>>> while i < 10:
...     print(i)
...     if i == 3:
...         i += 1
...         break
...         print("执行不到的语句")
...     i += 1
...     print("只会执行到i==3")
... else:
...     print("从上面循环中跳出,不会执行这里的代码块")
...
1
只会执行到i==3
2
只会执行到i==3
3
pass关键字

它是空语句,什么也不干,就是占位;保持结构的完整性。


if i in range(4):
    pass

# 执行什么也不会,但是它会遍历完
思考一下:while 能不能搭配 x in xxx呢?
相关文章
|
8天前
|
数据采集 人工智能 自然语言处理
Midscene.js:AI 驱动的 UI 自动化测试框架,支持自然语言交互,生成可视化报告
Midscene.js 是一款基于 AI 技术的 UI 自动化测试框架,通过自然语言交互简化测试流程,支持动作执行、数据查询和页面断言,提供可视化报告,适用于多种应用场景。
93 1
Midscene.js:AI 驱动的 UI 自动化测试框架,支持自然语言交互,生成可视化报告
|
17天前
|
JSON 数据可视化 测试技术
python+requests接口自动化框架的实现
通过以上步骤,我们构建了一个基本的Python+Requests接口自动化测试框架。这个框架具有良好的扩展性,可以根据实际需求进行功能扩展和优化。它不仅能提高测试效率,还能保证接口的稳定性和可靠性,为软件质量提供有力保障。
49 7
|
15天前
|
分布式计算 大数据 数据处理
技术评测:MaxCompute MaxFrame——阿里云自研分布式计算框架的Python编程接口
随着大数据和人工智能技术的发展,数据处理的需求日益增长。阿里云推出的MaxCompute MaxFrame(简称“MaxFrame”)是一个专为Python开发者设计的分布式计算框架,它不仅支持Python编程接口,还能直接利用MaxCompute的云原生大数据计算资源和服务。本文将通过一系列最佳实践测评,探讨MaxFrame在分布式Pandas处理以及大语言模型数据处理场景中的表现,并分析其在实际工作中的应用潜力。
50 2
|
30天前
|
敏捷开发 测试技术 持续交付
自动化测试之美:从零开始搭建你的Python测试框架
在软件开发的马拉松赛道上,自动化测试是那个能让你保持节奏、避免跌宕起伏的神奇小助手。本文将带你走进自动化测试的世界,用Python这把钥匙,解锁高效、可靠的测试框架之门。你将学会如何步步为营,构建属于自己的测试庇护所,让代码质量成为晨跑时清新的空气,而不是雾霾中的忧虑。让我们一起摆脱手动测试的繁琐枷锁,拥抱自动化带来的自由吧!
|
程序员 Python
6_python基础—循环(上)
6_python基础—循环
110 0
6_python基础—循环(上)
7_python基础—while循环应用1-100累加和
7_python基础—while循环应用1-100累加和
396 0
|
Python
6_python基础—循环(下)
6_python基础—循环
123 0
|
Python
猪行天下之Python基础——4.1 条件判断与循环
内容简述: 1、条件判断 2、循环
89 0
|
机器学习/深度学习 Python
Python基础(条件判断和循环) if elif else for while break continue;
条件判断 计算机之所以能做很多自动化的任务,因为它可以自己做条件判断。 比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,用if语句实现: age = 20 if age >= 18: print('your age is', age) print('adult') 根据Python的缩进规则,如果if语句判断是True,就把缩进的两行print语句执行了,否则,什么也不做。
2551 1
|
Python
Python基础06 循环
原文:Python基础06 循环 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢!   循环用于重复执行一些程序块。从上一讲的选择结构,我们已经看到了如何用缩进来表示程序块的隶属关系。
885 0