你还在为python的控制结构烦恼吗?

朋友们,我又来了,继续来学python吧。这个博客主要是程序的控制结构。
在这里插入图片描述

一.顺序结构

是按照语句顺序,从上而下,一条条的顺序执行。

二.分支结构

1.二分支:if-else语句

使用if保留字对条件进行判断,使用方式如下 :

if <条件>:
     <语句块1> 
else: 
     <语句块2>

当满足条件时,执行<语句块1>,否则执行<语句块2>
看下面这个程序

n = int(input("请输出一个整数:"))
if n % 2 == 0:
    print("这是个偶数")
else:
    print("这是个奇数")

运行结果为

请输出一个整数:4
这是个偶数
请输出一个整数:5
这是个奇数

当<条件>为多个时,条件间采用and或or进行组合。and表示“与”的关系,or表示“或”的关系。(not表示单个条件的“否”关系)
例如:

n = int(input("请输出一个整数:"))
if n % 6 == 0 and n % 7 == 0:
    print("这个数既能被6整除又能被7整除")
else:
    print(n)

2.多分支:if-elif-else语句

if <条件1>: 
    <语句块1> 
elif <条件2>: 
    <语句块2> 
... 
else: 
    <语句块N>

此结构通常用于判断同一个条件或一类条件的多个执行路径。
注意,Python会按照代码顺序依次评估判断条件,寻找并执行第一个结果为True的条件对应的语句块,当前语句块执行后跳过整个if-elif-else结构。所以要注意逻辑顺序。在这里插入图片描述

下面我们来看一个例子:

score = eval (input("请输入一个百分制成绩:"))
if score >= 90.0:
    grade = "A"
elif score >= 80.0:
    grade = "B"
elif score >= 70.0:
    grade = "C"
elif score >= 60.0:
    grade = "D"
else:
    grade = "E"
print("对应的五分制成绩是:{}".format(grade))

那么问题来了,下面这个程序对不对呢?
在这里插入图片描述

score = eval (input("请输入一个百分制成绩:"))
if score >= 60.0:
    grade = "D"
elif score >= 70.0:
    grade = "C"
elif score >= 80.0:
    grade = "B"
elif score >= 90.0:
    grade = "A"
else:
    grade = "E"
print("对应的五分制成绩是:{}".format(grade))

在这里插入图片描述
看到结果很显然是不对的,原因就是因为逻辑顺序出了问题,一定要好好理解一下。在这里插入图片描述

补充一点:在Python中,任何非零的数值、非空的数据类型都 等价于True;0或空类型等价于False,可以直接用作判断条件。如:

n = 0 == False
print(n)

True

n = 0 == True
print(n)

False

三.循环结构

1.遍历循环

使用保留字for依次提取遍历结构各元素进行处理,
①.可以逐一遍历字符串的每个字符,基本使用方式如下:

for <循环变量> in <字符串变量>: 
         <语句块>
for c in "hello":
    print(c)

输出为在这里插入图片描述
②.使用range()函数,可以指定语句块的循环次数,

for <循环变量> in range(<循环次数>): 
      <语句块>
for i in range(5):
    print(i)

运行结果为:0 1 2 3 4(注意哦是从0开始的)

sum = 0
for i in range(1,11):
    sum+=1/i
print("和是:",sum)

这样的就是从1开始循环10次。
③.遍历循环还有一种扩展模式,使用方法如下:

for <循环变量> in <遍历结构>: 
     <语句块1>
 else: 
     <语句块2>

当for循环正常执行之后,程序会继续执行else语句。else语句只在循环正常执行之后才执行并结束.
所以可以在<语句块2>中放置判断循环执行情况的语句。

2.无限循环

①.使用保留字while根据判断条件执行程序。

while <条件>: 
       <语句块>

判断条件如果为True, 执行循环体语句;当条件为False时,循环终止。

n = 0
while n<10:
    n = n + 4
    print(n)

4 8 12
②.无限循环也有一种使用保留字else的扩展模式,

while <条件>: 
         <语句块1> 
else:
         <语句块2>

当while循环正常执行之后,程序会继续执行 else语句中内容。else语句只在循环正常执行后才执行.因此,同样可以在<语句块2>中放置判断循环执行情况的语句。

循环控制:break和continue

break,continue语句用在for循环和while循环中。

  • break用来跳出最内层循环,从循环后代码继续执行。简言之,break跳出整个循环。
  • continue用来结束当前当次循环,即跳出循环体中下面未执行的语句,但不跳出当前循环。continue语句只结束本次循环,不终止整个循环的执行。
    下面举几个例子帮助理解在这里插入图片描述
  • for循环
#break
a = "hello world"
for b in a:
    if b == "l":
        break
    print(b)
#运行结果为:
#h 
#e

#continue 
a = "hello world"
for b in a:
    if b == "l":
        continue
    print(b)
#运行结果为:
#h 
#e 
#o 
#w 
#o 
#r 
#d
  • while循环
#break
c = 6
while c > 0:
    print(c)
    c = c - 1
    if c == 2:
        break
print("ok")
#运行结果为:
#6
#5
#4
#3
#ok

#continue
i = 1
while i < 10:
    i += 1
    if i%2 > 0:
        continue
    print(i)
#运行结果为:
#2
#4
#6
#8
#10

以上就是我们循环的内容了,你学会了吗?
在这里插入图片描述
类型判断和类型间转换
Python提供type(x)函数对变量x进行类型判断,适用于任何数据类型。

n = eval(input("请输入一个整数:"))
if type(n) == type(1):
    print("输入的数是整数。")
elif type(n) == type(1.1):
    print("输入的数是浮点数。")
else:
    print("无法判断输入类型。")`

再补充一个小知识点:python中怎么注释多行
大家都知道可以用 # 来注释一行,那么如果注释多行每一行都用 # 是不是太麻烦了呢
①python中多行注释是三引号,包括’’'和"""

'''     
注释内容
'''
"""
注释内容
"""

②先选中要注释的段落,然后按下“ctrl+/”,即可实现多行代码的注释。再一次按下“ctrl+/”就可以取消注释。(其实就是用#的快捷方式)

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值