- 条件(分支)语句
- 循环语句
- break 和 continue
分支语句
-
if 分支语句
- 分支语句会根据条件判断,执行不同的分支代码。
- 流程
- 一个分支
- 多个分支
代码例子:
a = 10
b = 20
c = 30
if a > b:
if a > c:
print("a是三个数中的最大值,值为%d" % a)
else:
print("c是三个数中的最大值,值为%d" % c)
elif b > c:
print("b是三个数中的最大值,值为%d" % b)
else:
print("c是三个数中的最大值,值为%d" % c)
代码练习1
if 语句
一个分支的条件语句
if 条件表达式:
语句块
注意:
1.条件表达式后面必须写冒号(:)
2.接下来的代码另起一行,并且缩进4个空格
执行:
如果条件表达式为True时,执行下面的语句块
baozi=10
xigua=2
if xigua>0:
baozi=1
print("----")
print(baozi)
多个分支的条件语句
if 条件1:
语句块1
elif 条件2:
语句块2
else:
语句块n
注意:
1.else后面不写条件,要写冒号(:)
2.分支下的语句另起一行,缩进4个空格,并且对齐
3.else分支不是必须的
执行:
1.条件1如果是True,执行语句块1,结束条件语句,如果条件1是False,继续执行
2.条件2如果是True,执行语句块2,结束条件语句,如果条件2是False,继续执行
3.列出条件都不成立时,执行else分支下的语句块
core=70
if score==100:
print("太棒了!")
elif score>=90:
print("优秀!")
elif score>=80:
print("良好")
elif score<60:
print("加油了!")
else:
print("合格!")
练习
1.输入一个整数,输出是正?负?零?
num = int(input('输入一个整数:'))
if num>0:
print(num,'是正数')
elif num==0:
print(num,"是零")
else:
print(num,"是负数")
循环语句
-
while循环语句
- 我们可以通过一些条件判断来完成一些语句的循环调用。
- 流程
- else
代码例子
- while 循环语句
i = 1
sum = 0
while i <= 100:
sum += i
i += 1
print("1 + 2 + .... + 100 = %d" % sum)
- while循环语句+条件语句
例子:计算从1加到100的所有偶数和
i = 1
sum = 0
while i <= 100:
if i % 2 == 0:
sum += i
i += 1
print("1 + 2 + .... + 100 = %d" % sum)
- while循环+else
num = 1
while num <= 5:
print(num)
num += 1
else:
print(num, "不满足条件,循环退出")
代码练习2
while循环
while 条件:
语句块
注意:
1.条件后面要写冒号(:)
2.接下去的语句块另起一行,缩进4个空格,要求对齐
3.不小心写了一个无限循环,可以按Ctrl+C,强行结束
执行:
1.如果条件是True,继续执行,否则结束循环
2.执行while下的语句块(循环体),继续执行1
n=1
total=0
while n<=100:
total+=n
n+=1
print("total:",total)
print("n=",n)
带else分支的while
while 条件:
语句块
else:
语句块n
执行:
1.如果条件是True,继续执行,否则执行else分支中的语句块,结束循环
2.执行while下的语句块(循环体),继续执行1
n=1
total=0
while n<=100:
total+=n
n+=1
else:
print("n=",n)
print("total:",total)
break,continue,pass
-
break
- 某一条件满足时,退出循环,不再执行循环语代码。break后while后面的else分支也不会执行。
-
continue
- 某一条件满足时,退出本次循环,接着执行下次循环代码。
-
pass
- pass是一个空语句,什么都不做,一般是用来保持结构完整的。
代码例子
break 和 continue
i = 0
while(i <= 5):
i += 1
if i == 2:
continue # 退出当次循环,进行下一次循环
elif i == 4:
break # 退出循环
print(i)
pass
if True:
pass
print("done")
代码练习3
break 循环中执行了break,退出循环
n=0
while n<100:
n+=1
print(n)
if n==4:
break
print("n=",n)
continue - 循环中执行continue,这次循环剩下的语句不再执行,继续下一次循环判断
n=0
while n<100:
n+=1
if n==4:
continue
break
print(n)
else:
print("-----------")
print("n=",n)
练习
计算100以内的奇数的和
n=1
sum=0
while n<100:
if n%2==1:
sum+=n
n+=1
else:
# print("sum:",sum)
print("sum:"+str(sum))
使用cotinue完成计算100以内的奇数的和
n=0
sum=0
while n<100:
n+=1
if n%2==0:
continue
sum+=n
else:
print("sum:",sum)
代码练习4
循环嵌套
while 条件1:
语句块
while 条件2:
内循环语句块
语句块
执行:
1.如果条件1是True,就继续执行,否则结束外层循环
2.如果条件2是True,执行内循环语句块,继续执行2,如果条件2是False,结束内层循环,继续执行1
输出九九乘法表
i=1
while i<=9:
j=1
while j<=i:
print(str(j)+"x"+str(i)+"="+str(j*i),end="\t") 正常内容输出结束后,输出end指定的字符。默认end="\n"
j+=1
else:
print(end="\n") #换一行
i+=1
for循环
代码例子
for语句
for 变量 in 字符串:
语句块
注意:
1.字符串后面要写冒号
2.下面的语句块要缩进4空格,且要对齐
mystr="hello"
for c in mystr:
print(c)
从后往前输出
i = len(mystr)-1 #最大索引
while i>=0:
print(mystr[i])
i-=1