判断与循环语句 07


程序的执行流程分为三种结构:顺序结构(之前我们写的代码都是顺序结构)、分支结构(用到if判断)、循环结构(用到while与for)

1.if 判断语句

Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。

img

1.1 if 语句

#if 判断条件:	
#   执行语句1
#判断条件为True执行的语句1
age=20
if age>=18:
    print('已成年')

1.2 if-else语句

#if 判断条件:	
#   执行语句1
#else:       
#   执行语句2
#判断条件为True执行的语句1
#判断条件为False时执行语句2
age=int(input("请输入你的年龄"))
if age>=18:
    print('已成年')
else:
    print('未成年')
        
    

    
    

1.3 if-elif-else

编程时常常需要判断一系列的条件,一旦某个条件为真时就立即停止,这总情况可以采用 if-elif-else语句其一般形式如下:

if 判断条件1:
   执行语句1
elif 判断条件2:
    执行语句2
elif 判断条件3:
   执行语句3
else:
   执行语句4

依次判断条件,当满足某个条件时执行其相对应的语句块

如果都不满足则执行最后的else对应的语句块,然后在执行后续程序

score=int(input("请输入成绩"))

if score >= 90:
    print('优秀')
elif score >= 80:
    print('良好')
elif score >= 70:
    print('普通')
else:
    print('很差')

1.4 嵌套if语句

在if语句中又包含一个或者多个if语句时,称为if语句的嵌套

if 判断条件1:
	if 判断条件2:
		执行语句1
	else:
		执行语句2
else:
	if 判断条件3:
		执行语句3
	else:
		执行语句4

1.5.三元表达式


x = 1
y = 2

res = 'ok' if x > y else 'no'  # 条件?值1:值2
print(res)




2.循环语句

什么是循环语句语句?

循环结构就是重复执行某段代码块

2.1 while循环语句

image-20210730155132286

while 判断条件:
	语句块		#循环体
    
    
当判断条件为真时执行循环体:
在接着判断条件,如果为真,继续执行循环体;
如此反复,直到判断条件为假时结束循环体,执行五while后的语句
i=1
while i<=5:
	print(i)
	i+=1
 

image-20210730154950272

2.1.2死循环:永不结束的循环
while True:

print(1)
2.1.3结束while循环有两种方式

方式一:把条件改为False, 必须要等到下一次循环判断条件时才能结束循环

i = 1
tag = True
while tag:
    if i == 5:
        tag = False
    print(i)
    i += 1
image-20210730154950272

方式二:break终止本层循环,会立即结束while循环,根本没有下一次

i = 1
tag = True
while tag:
    if i == 5:
        break
    print(i)
    i += 1
QQ截图20210730160233
2.1.4continue

continue则用于结束本次循环,直接进入下一次循环

i = 1
while i <= 5:
    if i == 3:
        i += 1
        continue
    print(i)
    i += 1

强调:

1、不要在continue后加与continue同级的代码,加了就永远运行不了了

2、循环体代码的最后一步不要写continue

2.2 while+else

else的子代码何时运行:
while循环结束后并且是在正常情况下结束的,else的子代码块才会运行
ps:只要不是被break干掉的循环,都是正常结束的

正常结束的

i = 0
while i <= 5:
    if i == 3:
        i += 1
        continue
    print(i)
    i += 1
else:
    print("==============")

image-20210730161713715

被break结束的

i = 0
while i <= 5:
    if i == 3:
        i += 1
        break
    print(i)
    i += 1
else:
    print("==============")

image-20210730161817594

2.2. for循环语句

for循环可以做的事情while循环都可以实现,之所以用for循环是因为在循环取值(即遍历值)时for循环比while循环的使用更为简洁

for更擅长遍历值,for循环的次数取决值的个数

for 变量名 in 可迭代对象: # 此时只需知道可迭代对象可以是字符串\列表\字典,我们之后会专门讲解可迭代对象
    代码一
    代码二
    ...

#例1  遍历数列
for item in ['a','b','c']:
    print(item)
# 运行结果
a
b
c


#例2
l1 = [[111, 222], [444, 555], [777, 888]]
for x,y in l1:  #x,y =[111,222]
	print(x,y)
# 运行结果
#例1  遍历字典
dic = {'k1':111,'k2':222,'k3':333}
for k in dic:
    print(k,dic[k])
# 运行结果
k1 111
k2 222
k3 333
    
2.2.1for 循环语句与range()函数

range() 函数时python的内置函数

python2.x range() 函数可创建一个整数列表,一般用在 for 循环中。

Python3 range() 返回的是一个可迭代对象(类型是对象),而不是列表类型, 所以打印的时候不会打印列表

for 循环语句经常与range()函数一起使用

range()函数的语法是:

range([start],stop,[step])
#start   计数从start开始,默认是0      range(5)等价range(0,5)
#stop	 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
#step:   步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)

for count in range(6):  # range(6)会产生从0-5这6个数
    print(count)
    

    
# 运行结果    
0
1
2
3
4
5
# 让某段代码重复运行3次-》for循环实现如下
for x in range(3):
    print('hello1')
    print('hello2')
# 运行结果
hello1
hello2
hello1
hello2
hello1
hello2



2.2.2for循环嵌套
for i in range(3):
    for j in range(5):
        print("*",end='')
    print()  # print()表示换行
    
# 运行结果  
*****
*****
*****
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值