Python3条件控制、循环语句

if语句

Python中用elif代替了else if,所以if语句的关键字为:if-elif-else

注意:

  • 每个条件后面要使用冒号 :,表示接下来是满足条件后要执行的语句块。
  • 使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。
  • 在Python中没有switch – case语句。
    一般形式:
if condition_1:
    statement_block_1
elif condition_2:
    statement_block_2
else:
    statement_block_3

实例演示:

age=19
tall=186
if age <= 0:
    print("你还没出生呢!")
elif age < 18:
    print("你还是个未成年!")
elif age:
    print("你已经成年了!")
if tall < 170:
    print("你缺乏营养!")
elif tall:
    print("你营养不错!")

在这里插入图片描述
if嵌套演示:

#五级制成绩
num=int(input("请输入一个成绩:"))
if num >=90:
    print('A')
else:
    if num >= 80:
        print('B')
    else:
        if num >= 70:
            print('C')
        else:
            if num >=60:
                print('D')
            else:
                print('E')

在这里插入图片描述

while循环

在Python中,没有do…while循环

while 判断条件(condition):
    执行语句(statements)……
a=1
while a<10:
    print(a)
    a=a+2

在这里插入图片描述

无限循环

使用Ctrl+c退出循环
无限循环在服务器上客户端的实时请求非常有用。

a=1
while a==1:
    num=int(input("请输入一个数字:"))
    print("你输入的数字是:",num)

在这里插入图片描述

while循环使用else语句

在 while … else 在条件语句为 false 时执行 else 的语句块。

a=5
while a <16:
    print(a,"小于16")
    a=a+4
else:
    print(a,"大于或等于16")

在这里插入图片描述

简单语句组

类似if语句的语法,如果你的while循环体中只有一条语句,你可以将该语句与while写在同一行中

while(1):print("停不下来!快按ctrl+c")  
print("Goodbye")

for语句

Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。
一般格式如下:

for <variable> in <sequence>:
    <statements>
else:
    <statements>
languages=["C","C++","Python","Perl"]
for x in languages:
    print(x)

在这里插入图片描述

for语句中使用break

languages=["C","C++","Python","Perl"]
for x in languages:
    if x == "Python":
        print("Python!")
        break
    print("循环数据", x)
else:
    print("没有循环数据")
print("循环结束!")

在这里插入图片描述

rang()函数

  • 如果你需要遍历数字序列,可以使用内置range()函数。它会生成数列
for i in range(6):
    print(i)
    

在这里插入图片描述

  • 也可以使用range指定区间的值
for i in range(5,9):
    print(i)

在这里插入图片描述

  • 可以使range以指定数字开始并指定不同的增量(甚至可以是负数,有时这也叫做’步长’)
for i in range(0,10,3):
    print(i)

在这里插入图片描述
负数

for i in range(-1,-12,-3):
    print(i)

在这里插入图片描述

  • 结合rang()和len()函数以遍历一个序列的索引
a=['Google', 'Baidu', 'Runoob', 'Taobao', 'QQ']
for i in range(len(a)):
    print(i,a[i])

在这里插入图片描述

  • 还可以使用range()函数来创建一个列表
a=list(range(10))
print(a)

在这里插入图片描述

break和continue语句及循环中的else子句

  • break 语句可以跳出 for 和 while 的循环体。如果你从 for 或 while 循环中终止,任何对应的循环 else 块将不执行。
  • continue 语句被用来告诉 Python 跳过当前循环块中的剩余语句,然后继续进行下一轮循环。

break

实例演示:
while中使用break:

m=5
while m> 0:
    m=m-1
    if m == 2:
        break
    print(m)
print("循环结束")

在这里插入图片描述

continue

while中使用continue:

m=5
while m> 0:
    m=m-1
    if m == 3:
        continue
    print(m)
print("循环结束")

在这里插入图片描述

查询质数(else应用)

在 python 中,for … else 表示这样的意思,for 中的语句和普通的没有区别,else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行,while … else 也是一样。

for n in range(2,20):
    for x in range(2,n):
        if n % x == 0:
            print(n,'等于',x,'*',n//x)
            break
    else:
            print(n,"是质数")

在这里插入图片描述

pass语句

Python pass是空语句,是为了保持程序结构的完整性。
pass 不做任何事情,一般用做占位语句,如下实例:

for x in "Kobe bryant":
    if x =='o':
        pass
        print("pass块")
    print(x)
print("forever")

在这里插入图片描述

for与while练习

打印1-9三角形阵列

for i in range(1,11):
    for k in range(1,i):
        print(k,end=" ")
    print("\n")

在这里插入图片描述

99乘法口诀表

i=1
while i <= 9:#外循环控制行数
    j=1
    while j<=i:#内循环控制列数
        s=i*j
        print("%dx%d=%d"%(i,j,s),end=" ")
        j=j+1
    print("")#换行
    i=i+1

在这里插入图片描述

最大公约数最小公倍数

m=int(input("第一个数:"))
n=int(input("第二个数:"))
min=min(m,n)
for i in range(1,min+1):
    if(m % i == 0 and n % i == 0):
        r=i
    k=int((m*n)/r)
print("最大公约数:",r)
print("最小公倍数:",k)

在这里插入图片描述

发布了67 篇原创文章 · 获赞 216 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_45895026/article/details/104122706