Python循环学习笔记

for … in … 循环语句

for 循环的格式如下:
在这里插入图片描述

遍历列表

自动检测
a=[‘七七’,‘卡西’,‘延君’]
for i in a:
print(i)
注意:i 只是一个变量名,可以叫为 a,b,不一定为 i,i 只是存储遍历列表出来的变量而已。

遍历字典

遍历字典的键和值

自动检测

d={1:‘七七’,2:‘卡西’,3:‘延君’}
for a,b in d.items():
print(‘字典的键为:’+str(a)+’\字典的值为:’+str(b))

结果为:

字典的键为:1、字典的值为:七七
字典的键为:2、字典的值为:卡西
字典的键为:3、字典的值为:延君

注意:这里的 items() 是一个方法,我们用 for 遍历字典后,将字典的键、值分别用变量 a、b 存储。

遍历字典的键(方法一)

自动检测

d={1:‘七七’,2:‘卡西’,3:‘延君’}
for i in d:
print(i)

结果为 1,2,3

遍历字典的键(方法二)

自动检测

d={1:‘七七’,2:‘卡西’,3:‘延君’}
for i in d.keys():
print(i)

结果为 1,2,3
注意:这里的 keys() 是一个方法,我们用 for 遍历字典后,将字典的键用变量 i 存储。

遍历字典的值

自动检测

d={1:‘七七’,2:‘卡西’,3:‘延君’}
for i in d.values():
print(i)

结果为七七、卡西、延君
注意:这里的 values() 是一个方法,我们用 for 遍历字典后,将字典的值用变量 i 存储。

range() 函数

不带间隔数

作用:生成了一个【取头不取尾】的整数序列
我们用 for 和 range() 函数结合起来的例子看 range() 的效果:
自动检测

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

结果为 1、2
有点类似我们的列表(左取右不取),range() 函数里面的为“取头不取尾”。

带间隔数

自动检测

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

结果为 1、4、7
解析:这里的代码是从1数到9(取头不取尾),取值的间隔为3

while 循环语句

常见使用

自动检测

a=1
while a<5:
print(a*5)
a=a+1

解析:我们这里定义了一个 a 并赋值 1,while 循环的判断语句是 a<5,当符合条件时,执行循环内的语句。
注意:
我们循环内需要让 a 的值改变,不然 a 一直等于 1,语句将会进入死循环;
print(a*5) 只是打印了 a 乘以 5 的值,但实际上没有改变 a 的值。

while … else … 语句

自动检测

a=input(‘七七怎样?’)
while a == ‘七七真可爱’:
print(‘输入正确~’)
else:
print(‘输入错误~’)

解析:如果我们输入的内容不等于 “七七真可爱” ,则打印 “输入错误~” ,否则打印 “输入正确~”。

避免进入无限循环

以下为危险操作,请勿模仿!!!
自动检测

while True:
print(‘已经进入死循环’)

解析:由于第 1 行的 while True 代码是一定会执行,也就是while 1,所以一直打印出‘已经进入死循环’这句话。
如何避免:
代码区使用 exit() ,在运行终端输入该代码,强行结束运行
终端区按 ctrl+c,强行结束运行
代码区使用 break 语句(如下),当打印完‘已经进入死循环’这语句后,会直接跳出循环
正确操作:
自动检测

while True:
print(‘已经进入死循环’)
break

布尔值

概念

定义:计算机的逻辑判断,只有两种结果,就是True(英文意思是“真”)和False(英文意思是“假”)
自动检测

print(3<5) #结果为 True
print(3>5) #结果为 Flase
print(‘长安’==‘长安’) #结果为 True
print(‘长安’!=‘金陵’) #结果为 True

解析:
(1)第一条语句的数据运算是3是否小于5,因为3确实小于5,所以打印结果为True
(2)第二条语句的数据运算是3是否大于5,因为3不大于5,所以打印结果为False
(3)第三条语句的运算是字符串相等比较,因为长安等于长安,所以打印结果为True
(4)第四条语句的运算是字符串不相等比较,因为长安确实不等于金陵,所以打印结果为True

while循环执行,必须要while后的条件为“真”。比如 while True 则循环语句会执行,但是 while 3>5 为 “假”,则循环语句不执行
自动检测

while True:
print(‘可执行’)
break

可执行

while 3>5:
print(‘执行不了’)
break

不可执行
在这里插入图片描述

数值比较

在这里插入图片描述

注意:
前两种 == 和 !=,这两种在条件判断中用得非常多
代码中,表示相等关系;而=表示给变量赋值。=和虽然长得相似,但没有任何关系

数值运算

python 中也有默认的真假判断,以下是我们的分类图:
在这里插入图片描述

bool() 函数

bool() 函数来查看一个数据会被判断为真还是假
自动检测

print(‘以下数据判断结果都是【假】:’)
print(bool(False))
print(bool(0))
print(bool(’’))
print(bool(None))

print(‘以下数据判断结果都是【真】:’)
print(bool(True))
print(bool(1))
print(bool(‘abc’))

布尔值间的运算

布尔值之间常用的运算 and(两者都)、or(两者的其中之一)、in(在)、not in(不在)、not(不)。

and

and 是需要左右两边的判断都为 “真” 才为 “真”
自动检测

a=0
b=0
print(a == 0 and b == 0)
print(a == 1 and b == 0)
print(a == 0 and b == 1)
print(a == 1 and b == 1)

在这里插入图片描述
结果分别为:True、Flase、Flase、Flase

or

or 是只需要一个为 “真” 就为 “真”
自动检测

a=0
b=0
print(a == 0 or b == 0)
print(a == 1 or b == 0)
print(a == 0 or b == 1)
print(a == 1 or b == 1)

在这里插入图片描述

结果分别为:True、True、True、Flase

in

自动检测

A=[1,2,3]
print(1 in A)
print(4 in A)

结果分别为:True、Flase

not in

自动检测

A=[1,2,3]
print(1 not in A)
print(4 not in A)

结果分别为:Flase、True

not

not True就等于False,not False就等于True
在这里插入图片描述

总结

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

四种新语句

break 语句

break 是打断的意思,例如我们经常陷入死循环的语句,只需要在 print 语句下方加上 break ,就可以使语句跳出循环:
自动检测

while True:
print(‘求打断’)
break

continue 语句

continue 的意思是“继续”。这个子句也是在循环内部使用的。当某个条件被满足的时候,触发continue语句,将跳过之后的代码,直接回到循环头:
自动检测

while True:
a=input(‘请输入数字:’)
if a == ‘23’:
continue
print(‘打印不了我~~’)

解析:我们输入 23 后,执行了 if 语句内的内容,进而触发了 continue 语句,直接回到循环头,不打印最后的 “打印不了我~~”。

pass 语句

pass 就是不做任何操作的意思
自动检测

while True:
a=input(‘请输入数字:’)
if a == ‘23’:
print(‘打印不了我~~’)
else:
pass

解析:我们的 else 语句下方是需要输入内容的,但是当我们不需要任何内容时,可以输入 pass 表示什么都不做。(不输入 pass 会报错)

else 语句

else不但可以和if配合使用,它还能跟for循环和while循环配合使用,当不满足循环时,执行的语句,用于循环的逻辑判断。

与 for 套用

自动检测

for i in range(3):
print(i)
else:
print(‘打印完毕’)

解析:遍历完 range(3) 中的所有数后,执行打印语句。

与 while 套用

自动检测

a=input(‘请输入数字:’)
while a < ‘10’:
print(‘正确’)
else:
print(‘猜错了’)

解析:当 a 的值大于等于 10 时,会跳出while循环,执行else语句。

猜你喜欢

转载自blog.csdn.net/qq_44992918/article/details/109148032