流程控制

流程控制

一、条件判断

条件判断语句(if语句)

  • 执行的流程:
    if语句在执行时,会先对条件表达式进行求值判断,
    如果为True,则执行if后的语句
    如果为False,则不执行

  • 语法:if 条件表达式 :
    代码块

  • 代码块代码块中保存着一组代码,同一个代码块中的代码,要么都执行要么都不执行

  • 代码块以缩进开始,直到代码恢复到之前的缩进级别时结束

  • 代码块就是一种为代码分组的机制

input() 函数

  • 该函数用来获取用户的输入
  • input()调用后,程序会立即暂停,等待用户输入
  • 用户输入完内容以后,点击回车程序才会继续向下执行
  • 用户输入完成以后,其所输入的的内容会以返回值得形式返回

if-else语句

  • 语法:
  if 条件表达式 :

      代码块

  else :

      代码块
  • 执行流程:
    if-else语句在执行时,先对if后的条件表达式进行求值判断
    如果为True,则执行if后的代码块
    如果为False,则执行else后的代码块)

if-elif-else 语句

value = 30000

if value >= 30000:

    print('有钱任性')

elif value >= 20000:

    print('有钱真好')

elif value >= 10000:

    print('哥也月薪上万了')

elif value >= 5000:

    print('工资还说的过去')

elif value >= 2000:

    print('能养活自己了')
  • 语法:
  if 条件表达式 :

      代码块

  elif 条件表达式 :

      代码块

  elif 条件表达式 :

      代码块

   ........

  else :

      代码块
  • 执行流程:
    if-elif-else语句在执行时,会自上向下依次对条件表达式进行求值判断,
    如果表达式的结果为True,则执行当前代码块,然后语句结束
    如果表达式的结果为False,则继续向下判断,直到找到True为止
    如果所有的表达式都是False,则执行else后的代码块
  • 总结: if-elif-else中只会有一个代码块会执行

二、循环控制

while语句

  • 循环语句可以使指定的代码块重复指定的次数.循环语句分成两种,while循环 和 for循环
  • 语法:
  while 条件表达式 :

      代码块

  else:

       代码块

break和continue

  • break 可以用来立即退出循环语句,包括else语句
  • continue 用来跳过当次循环

for循环遍历

for循环

  • 通过for循环来遍历列表
语法
for 变量 in 序列(遍历的规则):
    代码块
  • 注意: 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)

三、循环嵌套

循环嵌套

  • Python 语言允许在一个循环体里面嵌入另一个循环。
while 表达式:
   while 表达式:
      代码块
   代码块

for 变量 in 循环规则:
   for 变量 in 循环规则:
       代码块
   代码块

四、常见问题总结

1. 为什么input输入的数据不能int类型做比较运算符的计算?

input函数输入的数据都是属于str类型,str类型的数据是不能和int类型的数据进行比较的,需要使用int()函数转化str数据才能进行比较

五、练习题

1、打印九九乘法表

for i in range(1,10):
    for j in range(i):
        j=j+1
        print("{}*{}={}" .format(i,j,i*j),end=' ')
    print('\n')

2、求1000以内所有的水仙花数

i=99
while i< 999 :
    i += 1
    a=i // 100
    b=i // 10 % 10
    c=i % 10 % 10
    if a**3 + b**3 +c**3 == i :
        print(i)

3、获取用户输入的任意数,判断其是否是质数?

a = int(input("请输入一个数,判断该数是不是质数:"))
if a <= 1:
    print(a,'不是质数')
elif a == 2:
    print(a,'是质数')
else:
    i=2
    while i < a:
        if a%i == 0:
            print(a,'不是质数')
            break
        i += 1
    else:
        print (a,'是质数')
上一篇:python基础2


下一篇:蓝桥杯 Python试题C:锻炼身体(小蓝真能跑)