Python教程

分支结构

hi, 今天我们讲程序控制的结构。

如果您想免费学习完整课程,以及Python自动化课程,请登录1024fun乐学编程主页。

http://www.eluzhu.com:1818/
程序设计的三种基本结构为:顺序结构、分支结构和循环结构。任何程序的设计都是由这三种基本结构反复嵌套构成,这就使得程序结构清晰,提高了程序设计的质量和编程效率。下面先来说说分支结构,分支结构也叫选择结构,就是我们经常使用的 if 条件判断语句。在执行 if 条件判断语句时,条件成立或者不成立都有固定的流程

if单分支结构

if 是单分支结构的关键字,表示如果的意思。if 关键字之后为所要判断的条件,条件是用能够得到布尔类型结果的运算式表示的, 在满足条件的情况下, 即条件运算式的结果为True,程序会继续向下执行,执行属于 if 语句的代码块。
if单分支结构语法:

if 条件表达式:
   语句块

是的,缩进是Python的灵魂, 缩进的强制规范使得Python的代码非常简洁并且有层次。这样我们就可以清晰地知道每条语句所对应的代码块。开启新的代码块一定要缩进, 使用Tab键进行缩进操作。
代码示例:

score = 95 #创建变量,并赋值
if score >= 90: #判断成绩是否大于等于90
 print("优秀") #输出

if双分支结构

if,else 为双分支结构的关键字, if 表示如果, else 表示否则。当 if 条件语句判断不成立时,会执行 else 语句所属模块的代码块。
if双分支结构语法:

if 条件表达式
   语句块
else
   语句块 

代码示例:

num = 12 #创建变量,并赋值
if num % 2 == 0: #判断数字是否为偶数
 print("偶数") #输出
else:
 print("奇数") #输出
输出结果
偶数

多分支结构

if、elif为多分支结构的关键字。在使用多分支结构时一定梳理清晰程序的逻辑。
if 多分支结构语法:

if 条件表达式1:              #如果条件表达式1成立(结果为True)
    语句块1                   #执行语句块1中的代码
elif 条件表达式2:            #否则,如果条件表达式2成立
    语句块2                   #执行语句块2中的代码
elif 条件表达式3:            #如果条件表达式3成立
    语句块3                   #执行语句块3中的代码 

多分支结构2

代码示例:

score = int(input("请输入你的成绩:") ) #用户输入
if score >= 90: #判断成绩是否在90分及以上
 print("奖励笔记本")
elif score >= 80: #判断成绩是否在80以上90以下
 print("奖励Python学习教程")
elif score >= 70: #判断成绩是否在70以上80以下
 print("奖励一支笔")
else: #判断成绩是否在70以下
 print("重做试卷")

用自然语言描述该程序,即如果你的成绩在90分及以上,奖励一台笔记本:如果你的成绩在80分及以上, 奖励一套Python学习教程; 如果你的成绩在70分及以上, 奖励一支笔, 否则你就要重做试卷。

for 循环

hi,今天我们讲重要的循环。
在编写代码的过程中,经常会出现需要不断重复的操作,这时就需要用到循环结构了。计数循环,即已经知道了所要循环的次数,当循环的变量值超过预先设定的值时,循环结束
for循环语句的语法:

for 变量名 in 列表:
循环体

代码示例:

for a in[12 , 4 , "你好", 6 , 8 ,"h"] : #for循环
 print(a) #输出
输出结果:
12 4 你好 6 8 h

range()函数

range()函数是for循环的一个小伙伴, 它可以为指定的整数生成一个数字序列
range() 函数的语法:

range(结束索引)
range(开始索引, 结束索引)
range(开始索引, 結束索引, 步长)

代码示例:

for i in range(5):
 print(i)
输出结果为0 1 2 3 4
for i in range(2,5):
 print(i)
输出结果为2 3 4
for i in range(1,10,2):
 print(i)
输出结果为1 3 5 7 9

如果没有开始索引,就默认从0开始,另外遍历过程中不包括结束索引。
问你个问题,如果让你打印乘法口诀,你会怎么做呢?

这么庞大的工程,肯定得用到循环啦!。。。可是具体怎么做呢

嵌套循环

嗯哼,我们要用嵌套可变for循环!
嵌套可变for循环就是for循环进行层层嵌套, 从单层for循环变成多重for循环。打印九九乘法表时, 单层for循环只能控制行或者列, 而乘法表行和列都需要变化, 所以就需要双重for循环。
代码示例:

for i in range(1 , 10): #控制行数
 for j in range(1 , i + 1): #控制列数
 print(str(j) +"*"+ str(i) + "=" + str(j * i) + '', end= "")
 #将数字强转为字符输出, end= ""意思是末尾不换行, 加空格换行
 print("\n")
输出结果:
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81

哇,太壮观啦,用循环来做重复的事情,简直不要太方便。

while条件循环

嗯哼,是的。下面我再说一个while条件循环,和for循环不同的是,他们的应用场景不一样。
while循环和if条件判断类似,执行if语句时,只要条件为真,属于if条件下的语句就会抽行一次。而执行while循环时, 只要条件满足就会一直执行,一直被执行的代码块称为循环体。
代码示例:

#下面代码将打印1+2+..+100的计算结果
i = 1; #创建变量,控制循环次数
sum = 0 #创建变量,储存计算结果
while i <= 100: #循环条件
    sum += i                                        #循环体
    i += 1 #循环体
print(sum)
输出结果:
5050

break语句

下面介绍一下break语句。break语句的作用是终止当前循环, 跳出循环体。break语句常用来结束整个循环。
代码示例:

i = 1 #创建变量,控制循环次数
sum = 0 #创建变量,存储计算结果
while i<= 100:
    sum += i
    i += 1
 if i > 100:
 break #停止循环
print(sum)
输出结果:
5050

continue语句

最后说说continue语句。continue语句的作用是跳过本轮循环中循环体的剩余语句, 并开始下一轮循环。
需要注意的是在开始执行下一轮循环时,会先对循环条件进行测试,满足条件程序才会继续向下执行。
代码示例

#下面代码将打印100以内的偶数
for i in range(100): #for循环
 if i % 2 == 1: #如果是奇数就跳过
 continue
 print(i, end = '')
输出结果:
02468101214161820222426283032343638404244464850525456586062646668707274767880828486889092949698

总结

在本节的学习中,我们对程序设计中的两种结构——分支结构和循环结构分别作了详细的介绍。循环结构又分为计数循环和条件循环,分别对这两种循环的使用进行了案例分析,并对循环控制语句break语句和continue语句的使用做了说明。最后我们做一道练习

编写程序,输出以下图形。

输出格式:星号组成的图形

样例输出:
******
*****
****
***
**
*

您可以登录1024fun乐学编程的主页免费学习完整课程,并在线做练习。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值