本篇将讲述前几章都有提起的循环,非常的重要,对于自动化测试的脚本来说,运用的都比较的频繁。好好看。

if语句

首先我们先来学习一下if语句,因为它通常会和for循环搭配使用,频率极高。

if 关键字或条件判断:

条件(即为表达式):

条件也可以是输出语句

name = '托马'if name == '托马':    print('正是托马')# 其结果是:# 正是托马

else:

name = '奔跑的托马'if name == '奔跑的托马':    print('正是托马')else:    print('不是托马')# 其结果是:# 正是托马

看看这个有意思的例题:

# 创建一个动物列表animal = ['cat','dog','duck','fish']#使用for循环遍历列表,定义一个新的变量用于循环animalfor animals in animal:    #使用if做一个判断,判断刚刚新定义的变量是否有进行遍历,并判断列表中是否有cat这个字符串    if animals == 'cat':        # 如果有,则以全字符大写的方式打印        print(animals.upper())    else: #否则        # 打印首字符大写        print(animals.title())# CAT# Dog# Duck# Fish

这里我们看到了一个新的知识,就是比较符==,这个是判断是否相等的一个比较运算符,这里会慢慢告诉小伙伴,后续还有!=不相等这样的判断,对于数字还有大于>、小于<、等于=、等这样的判断。

接下来我们看看不相等!=

request_name = 'dog'if request_name != 'cat':    print('比较结果不相等')

在这里,我们定义一个变量为'dog'的字符串,然后我们使用if语句进行判断,判断它时候等于字符串'cat',如果不等于,打印一个结果告诉我们。在这里我们自己也可以判断,这个的程序的最后的结论是不相等。

看了上述,你是不是绝对还是很迷,那么我们来详细讲讲吧!顺带比较符号一起了哦,好好学,好好看,多实践。不懂的多码两遍就懂了!!!

age = 1if age > 19:    print('Yes')else:    print('No')

解释:这里我们定义一个年龄变量age,用if-else对它进行一个判断,让age于19比较,如果age这个数大于19,那么我们就输出yes否则输出no,pyhton后台会做一个判断,然后给到我们想要的结果,这里如果不加print进行打印,程序就会报错哦!

elif

我们接下来学习if-elif-else语句:

举一个很易懂的题目,定义一个年龄age = ?,如果大于十八岁收费20元,大于十岁小于十八岁收费10元,小于十岁免费!

让我们看程序:

age = 13if age < 10:    print('小于十岁,免费')elif age < 18:    print('大于十岁小于十八岁,收费10元')else:    print('大于十八岁,收费20元')

解释:这里我们没有重复去判断大于十岁小于十八岁,这里你可以10<age<18也是可以的,我们用了elif在前面做了一个判断,所以在这里就不需要再次判断,这样写也给我我们带来了便捷。由于后面两个条件我们已经满足了,所以在尾部else那里直接打印就好,else是否则的意思,不需要再次坐条件判断了。

程序我们还可以改进,那就是省略else代码,只用elif,并且还可以使用多个elif

age = 65if age < 10:    print('免费')elif age <= 18:    print('收费10元')elif age <= 65:    print('收费20元')elif age > 65:    print('免费')

解释:这里也是采用上一个例子,多加了一个判断条件那就是<=

实战

animal = ['cat', 'dog', 'duck', 'fish', 'eagle', 'tortoise']new_animal = ['cat', 'fish', 'duck']for new_animals in new_animal:    if new_animals in animal:        print(f"{new_animals}:宠物还有哦")    else:        print(f"不好意思,{new_animals}:宠物没有了")# cat:宠物还有哦# fish:宠物还有哦# duck:宠物还有哦

解释:在这里我们看到了一个新的内容就是in,这个是判断是否包含在内,用户想买的动物是否包含在宠物店里面,用for循环遍历用户所需的宠物,再用if进行一个判断,如果用户所需要的宠物,宠物店有,则打印一个结果,否则,打印,不好意思,您所需的这些宠物没有了。

三元运算符

i = int(input("请输入一个数字"))print("你好,托马" if(i<10) else "你不好")# 你好,托马

这里print里面就是做了一个if else的判断。其写法等于以下:

if i<10:    print("你好,托马")else:    print("你不好")

while循环

while语句可以让程序运行你想运行次数,如果为True就会一直运行下去

while 条件语句:

条件判断,程序

i = 0while i < 5:    print('托马 ')    i += 1# 其结果是:# 托马 # 托马 # 托马 # 托马 # 托马

while为True的时候:

while True:    i = input('请输入一个数:')    if i == '1':        break# 其结果是:# 请输入一个数:2# 请输入一个数:3# 请输入一个数:1

在这个while循环内我们不输入字符串1,就会一直循环下去,结束了,看看下面的例题你就明白了。

input函数

在学习while循环之前呢,我们先来学习一下input()函数,这个函数是让程序暂停运行,等待用户输入内容!看代码:

lisi = input("请输入内容:")print(lisi)

input函数的用法就是这样,括号内我们可以输入自己想要输出的提示语哦,记得只是字符串类型,他可以搭配if,for,while来使用,本章后面会有很多的小实战帮助你理解。

这里我们在控制台输入托马后按下回车键,python就会自己运行print直接将结果打印出来了。我们也可以将输入的内容定义类型,比如说整型int型:

lisi = int(input("请输入内容:"))print(lisi)# 写法二lisi = input("请输入内容:")zhangsan = int(lisi)print(zhangsan)

这里我们多了一步另外定义一个变量用于接收输入的内容,这里值得注意的是int型我们只能输入数字,输入字符串就会报错!!!

while循环

** while循环就是不断的运行程序,直到条件不满足为止!**

i =1while i < 5:    print(i)    i += 1

看上面这个实例,我们先是定义了一个变量i,i为1,下一步进入while循环,我们在while循环这里给到一个判断,也就是简单的数学逻辑判断,这里呢值得注意的就是i += 1,可能有些小伙伴看不懂,其实就是i = i+1,简便了一些。还有一点就是为什么这个i += 1放在 print后面。

  1. 我们开始就定义了一个变量i=1,我们要想输出5以内,1及1以上的数字,就必须要把i先输出,才能进行累加

  1. 如果我们的i = 0,那么i += 1放在print前面就是正确的,否则输出的就是2,3,4,5,就不符合我们想要的结果了

我们再看一个例子:

zhangsan = ""while zhangsan != "lisi":    zhangsan = input("请输入内容:")    print(zhangsan)

解释:

我们在while循环前面先定义一个字符串变量,如果在这里直接使用input函数,while循环就会陷入死循环。
这里还有一个不好的地方就是我们输入的内容也会被一起打印出来,解决方案就是一个if判断
zhangsan = ""while zhangsan != "lisi":    zhangsan = input("请输入内容")    if zhangsan != "lisi":        print(zhangsan)

我们在这里又多做了一个判断,使用这个判断可以去除掉多余的内容哦。

除了自己使用逻辑判断,我们还可以直接使用while语句里面的真循环,也就是再不满足条件的情况下一直循环。除此之外,我们还有一系列的退出循环写法,看下面的例子

i = Truewhile i:    zhangsan = input("请输入内容:")    if zhangsan == "lisi":        i = False    else:        print(zhangsan)

这里我们使用了False进行了结束循环,while True:会让程序再判断过程中不满足条件 的情况下一直运行。当满足时就会结束循环了。

练习

九九乘法表

for i in range(1,10):    for n in range(1,i+1):        print(f"{i}*{n}={i*n}",end='\t')    print()

break语句

它可以控制哪些语句运行,哪些语句不运行哦。

while True:    zh = input("请输入内容:")    if zh == "托马":        break    else:        print(f"是{zh}哦,不是托马哦")

放在这就是当zh满足条件的时候结束循环

continue

还有continue语句可以使用,它不会跟break一样,直接结束循环,continue可以根据条件进行判断是否执行接下来的程序运行

# 简单例子while True:    i = input("请输入一个字母:")    if i == 'q':        continue    elif i == 'w':        break    else:        print('继续')# 请输入一个字母:q# 请输入一个字母:e# 继续# 请输入一个字母:w
# 复杂例子number = 0while number < 10:    number += 1    if number % 2 == 0:        continue    print(number)
  1. 这里我们就如上面的例题所说的,设定一个变量为0,然后将累加放在的print前面了哦

  1. 这里的%时模余的意思(用当前数除以2取余),当余数为0 的时候进入continue,程序停止输出,当模余不为0的时候打印当前数

实战

# 定义一个变量姓名列表name = ['zhangsan','lisi','wangwu','zhaoliu']# 再定义一个以及完成验证的用户列表name_user = []while name:    users = name.pop()    print(f"已经验证的有:{users.title()}")    name_user.append(users)for name_users in name_user:    print(f"完成核验的用户有:{name_users.title()}")

在这里呢,我们简单的使用while进行了列表验证,里面我们用到了.pop(),.append(),.title()方法,这都是我们讲列表的时候讲到的哦,忘记了的小伙伴赶紧去复习,我们直接进入解释阶段:

.pop()方法是移除,但是我们还是可以访问到它,这里我们将移除的列表字符串给到一个新的变量,以便于后面的添加。.append()方法呢,是添加的意思,将前面移除的列表字符串添加到我们定义的空的列表中,再使用for循环进行打印。

我们还可以进行删除操作哦

name = ['zhangsan','lisi','wangwu','zhaoliu','zhangsan','lisi']while 'lisi' in name:    name.remove('lisi')print(name)

这里我们用到了判断一个字符串是否包含再列表中,in方法,然后使用列表操作进行删除,并打印

for循环

在前面讲列表的时候我门用到了for循环,除此之外,for循环还可以有很多用处

range有三个参数:range(开始值默认0,结束值,步长)

在后面的学习过程中,你会经常看到for-range搭配使用。这里我们来举几个例子你就明白了。

for i in range(10):    print(i)

这里输出了10以内的数字,python中range(10)是不允许大于等于10的,所以10不输出。

for i in range(1,10):    print(i)

这里也是,从1开始到10,输出内容,但是不允许等于10,不输出10。

range步长

for i in range(1,10,2):    print(i)

从1开始,每隔两个数字输出一次。其结果:1,3,5,7,9

实战

name_list = []while True:    i = input('请输入名字')    if i == 'name':        break    name_list.append(i)for n in name_list:    print(n)"""请输入名字托马请输入名字无别事请输入名字name奔跑的托马"""

Python快速上手系列--循环结构--基础篇相关推荐

  1. Python快速上手系列--列表--详解篇

    本章有部分超纲内容,可作为了解,提前学习学习. 列表 列表,主要使用[ ]来表示,我这里的加了一个空格,便于看清哦!看下面的例子 # 这里声明一个变量,后续便于输出class_name = [&quo ...

  2. Python快速上手系列--类--详解篇

    本章是自动化测试的真正开始,因为在后续的过程中,你会接触到unittest框架,pytest框架,而不仅仅只是写一个函数+selenium脚本这么简单了. 1.创建类 1.1.了解类 我们首先了解一下 ...

  3. Python快速上手系列--字典--详解实战篇

    本章字典篇,比较的重要,所以有比较多的练习小实战,一起来看看吧. 字典 什么是字典: 字典:是一系列的键值对,每一个键都会有对应的一个值关联,它们可以是数字 ,字符串,列表以及字典本身.用{}来表示. ...

  4. c语言 字符串转运算符,快速上手系列-C语言之基础篇(二)数据类型与运算符...

    在上一篇文章<快速上手系列-C语言之基础篇(一)>中写了关于C语言的程序结构,关键字及控制语句.本篇主要写写C语言中数据类型,以及运算符相关方面的知识. 一.变量与常量 1.常量:在程序运 ...

  5. thinkcmf5调用指定分类的二级_Tengine快速上手系列教程amp;视频:基于Python API的图片分类应用入门丨附彩蛋...

    前言:近期,Tengine团队加班加点,好消息接踵而来,OpenCV 4.3.0发布,OPEN AI LAB AIoT智能开发平台Tengine与OpenCV合作共同加速边缘智能,Tengine再获业 ...

  6. 视频教程-Linux系列课程(基础篇)-Linux

    Linux系列课程(基础篇) 2年JavaEE开发 ,5年资深大数据开发大牛,曾就职于蓝点科技,擅长精准广告系统开发,精通Linux操作系统! 具备丰富的大数据研发和培训经验,熟练运用Hadoop和S ...

  7. 调试器工作原理系列一: 基础篇

    调试器工作原理系列一: 基础篇 本文是一系列探究调试器工作原理的文章的第一篇.我还不确定这个系列需要包括多少篇文章以及它们所涵盖的主题,但我打算从基础知识开始说起. 关于本文 我打算在这篇文章中介绍关 ...

  8. 手摸手,带你用vue撸后台 系列一(基础篇) - 掘金

    完整项目地址:vue-element-admin 系列文章: 手摸手,带你用 vue 撸后台 系列一(基础篇) 手摸手,带你用 vue 撸后台 系列二(登录权限篇) 手摸手,带你用 vue 撸后台 系 ...

  9. spring cloud 快速上手系列 -> 02-配置中心 Config -> 022-Config客户端

    spring cloud 快速上手系列 系列说明:快速上手,一切从简,搭建一个简单的微服务框架,让新手可以在这个基础框架上做各种学习.研究. 02-配置中心 Config 022-Config客户端 ...

最新文章

  1. TC配置文件WCMD.INI详解,只能在ini重修改的配置
  2. JSTL fmt标签格式化日期时分秒显示为00:00:00和12:00:00问题
  3. Mybatis---总结
  4. SQL Server基础之存储过程
  5. pyton中的self具体含义,加self与不加self有什么区别?
  6. hdu 3853 LOOPS 概率DP
  7. java自定义jsp标签_深入浅出javaWeb实战第17讲自定义JSP标签(上)
  8. php柱状图html代码,html5生成柱状图(条形图)效果的实例代码
  9. IPMI接口和BMC控制器
  10. 反思: Google 为何把 SurfaceView 设计的这么难用?
  11. 主板装机测试软件,主板检测工具:PSPident v0.74.1版发布
  12. 粉笔公考——错题集——行测
  13. Android项目:基于Android安卓医院挂号预约系统软件app(计算机毕业设计)
  14. 【个人整理】一文看尽目标检测算法SSD的核心架构与设计思想
  15. 阿里、腾讯、华为、紫光、脸书、港交所等公司高管变动
  16. 中间件weblogic部署详情
  17. 全国计算机一级office试题及答案,全国计算机一级msoffice考试题库附答案
  18. 提效80倍!优维CMDB好样的
  19. 超详细介绍!!!带你认识各种进制数的及其转换以及原码,反码,补码
  20. 华为m2android怎么升级,【刷机指导】华为平板M2 8 EMUI4.0回退EMUI3.1指导教程

热门文章

  1. 【异常检测-论文阅读】(CVPR 2022)Self-Supervised Predictive Convolutional Attentive Block for Anomaly Detection
  2. win下禁用光标闪烁 记录
  3. 群晖服务器删除文件后不见可用空间增大的,查询群晖NAS硬盘空间占用情况,解决删除文件空间不增加问题...
  4. 职场吐槽大会:一起聊聊职场里的奇葩人奇葩事
  5. 2008-1-14 《软件工程》课后习题解答...
  6. Hadoop 之 Avro
  7. 一篇文章带你搞定 MongoDB 实现 REST
  8. 用AI技术防止幼儿园虐待儿童,中国研究员研发视频流分析模型
  9. Java学习手册:(数据结构与算法-数组)如何求绝对值最小的数?
  10. centos7应用笔记:键盘重影射