天天看点

4、初学python之流程控制语句python流程控制语句

python流程控制语句

文章目录

  • python流程控制语句
    • 选择结构
    • 循环结构
      • for语句
      • while语句
      • continue和break
    • 练习
    • 答案

程序设计中流程控制语句一般都是有以下三种:

  • 顺序结构:按照自上向下,依次执行相应的语句。
  • 选择结构:用于判断给定的条件,根据判断的结果判断某些条件,根据判断的结果来控制程序的流程。
  • 循环结构:在程序中需要反复执行某个功能而设置的一种程序结构。

选择结构

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

一般形式为:

if <条件1>:
    <事件1>
elif <条件2>:
    <事件2>
else:
    <事件3>
           

意思是:

先进行判断条件1,如果条件1成立,则运行事件1,其他事件就不运行;

如果条件1不成立,再判断条件2,如果条件2成立,则运行事件2,其他事件不运行;

如果条件1和条件2都不成立,那么运行事件3,其他事件不运行。

注意:

每个条件的后面要有一个冒号,表示接下来是满足条件后需要执行的语句块。

要使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句。

score = int(input("请输入你的成绩:")) # 用int()方法是因为,使用input()获取的是字符串,需要转变为整数型,才能进行分数比较
if(score >= 90):
    print("你的成绩是优秀的!")
elif(score >= 80):
    print("你的成绩是良好的!")
elif(score >= 70):
    print("你的成绩是中等的!")
elif(score >= 60):
    print("你的成绩一般般!")
else:
    print("你的成绩不合格!")
           

在上述代码中,如果输入的成绩是90-100分区间的,那么就会输出成绩优秀;如果输入的成绩是80-90分区间的,那么会输出成绩良好,其他的也类似,根据不同的条件输出不同的语句。

if语句里也可以嵌套,即一个if语句里再加一个if语句。

num = int(input("请输入一个数字:"))
if num%2==0:
    if num%3==0:
        print("你输入的数字可以整除2和3")
    else:
        print("你输入的数字可以整除2,但不能整除3")
else:
    if num%3==0:
        print("你输入的数字可以整除3,但不能整除2")
    else:
        print("你输入的数字不可以整除2和3")
           

循环结构

python中的循环语句有for和while。

for语句

首先先了解一个函数: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循环语句搭配使用。

for i in range(0,5):
    print(i)
           

上面的代码意思为:

使用for循环来遍历可迭代对象,即一次一次输出 i 的值,而 i 的值是range(0,5)赋予的。输出的结果为

1

2

3

4

循环输出1-10的数字。

for i in range(1,10): # i只是一个变量名,可以随意修改
    print(i)
           

输出10遍hello world

for i in range(10):
    print("hello world")
           

输出10以内的正偶数

for num in range(1,10):
    if num%2==0:
        print(num)
           

while语句

while语句也需要注意缩进格式,一般形式为:

while <条件>:
    <事件>
           

使用while语句计算1到100的总和

a=1 # 初始值为1
count=0 # 记录综合
while a<=100:
    count = count + a
    a = a + 1
print(count) # 输出结果为5050
           

continue和break

break 语句可以跳出 for 和 while 的循环体。如果你从 for 或 while 循环中终止,任何对应的循环 else 块将不执行。

continue 语句被用来告诉 Python 跳过当前循环块中的剩余语句,然后继续进行下一轮循环。

n = 5
while n > 0:
    n -= 1
    if n == 2:
        break
    print(n)
print('循环结束。')
           

输出结果为:

4
3
循环结束。
           
n = 5
while n > 0:
    n -= 1
    if n == 2:
        continue
    print(n)
print('循环结束。')
           

输出结果为:

4
3
1
0
循环结束。
           

练习

1、输出1-100中所有可以被3整除的数。

2、输入三个整数,把这三个整数按从大到小的顺序输出

3、分别用while和for语句编写程序,计算整数100到1000的和。

4、输出九九乘法表

答案

1、

# 使用while循环
a=1 # 初始值为1
while a<=100:
    if a%3==0:
        print(a)
    a=a+1
    
# 使用for循环
for i in range(1,101): # 因为range()的区间是不包括最右边那个数的,因此这里是101
    if i%3==0:
        print(i)
           

2、

print("请输入三个整数")
a=int(input("请输入第一个整数:"))
b=int(input("请输入第二个整数:"))
c=int(input("请输入第三个整数:"))
if a>b:
    if b>c:
        print(a,b,c)
    else:
        if a>c:
            print(a,c,b)
        else:
            print(c,a,b)
else:
    if b>c:
        if a>c:
            print(b,a,c)
        else:
            print(b,c,a)
    else:
        print(c,b,a)
           

3、

# 使用while循环
i=100
count=0
while i<1000:
    count+=i # count=count+1的缩写
    i+=1
print(count)

#使用for循环
count=0
for i in range(100,1000):
    count+=i
print(count)
           

4、

for i in range(1,10):
    for j in range(1,i+1):
        # str()是将整数变量转变为字符串,使其能够用print()输出
        print(str(j)+"×"+str(i)+"="+str(i*j),end="\t") #print()的参数end,表示输出内容后的结尾,默认是换行,这里是用\t来设置输出格式
    print() # 用于换行
           

作者:阿涛

CSDN博客主页:https://blog.csdn.net/qq_43313113

如有不对的地方,欢迎在评论区指正

欢迎大家关注我,我将持续更新更多的文章