python流程控制语句

Posted lanist

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python流程控制语句相关的知识,希望对你有一定的参考价值。

1.条件判断

Python程序语言制定任何非0和非空(null)值为true,0或者null为false。‘

其中"判断条件"成立时(非零),则执行后面的语句,而执行内容可以多行,以缩进来区分表示同一范围。条件不成立时,,执行else语句。

if语句

if 判断条件:
    执行语句……
else:
    执行语句……

判断小于5的数的奇偶

#AUTHER:LANIST
a = 1
while a<5:
    if(a%2 == 0):
        print(a,"is even")
    else:
        print(a,"is odd")
    a+=1

if 语句的判断条件可以用>(大于)、<(小于)、==(等于)、>=(大于等于)、<=(小于等于)来表示其关系。

当判断条件为多个值时,可以使用以下形式

 

if 判断条件1:
    执行语句1……
elif 判断条件2:
    执行语句2……
elif 判断条件3:
    执行语句3……
else:
    执行语句4……

 

由于 python 并不支持 switch 语句,所以多个条件判断,只能用 elif 来实现,如果判断需要多个条件需同时判断时,可以使用 or (或),表示两个条件有一个成立时判断条件成功;使用 and (与)时,表示只有两个条件同时成立的情况下,判断条件才成功。

 and 和 or 的优先级低于>(大于)、<(小于)等判断符号,即大于和小于在没有括号的情况下会比与或要优先判断。

#AUTHER:LANIST
num = 9
if num >= 0 and num <= 10:  # 判断值是否在0~10之间
    print(hello)# 输出结果: hello

num1 = 10
if num1 < 0 or num1 > 10:  # 判断值是否在小于0或大于10
  print(hello)
else:
  print(undefine)# 输出结果: undefine


num2 = 8# 判断值是否在0~5或者10~15之间
if (num2 >= 0 and num2 <= 5) or (num2 >= 10 and num2 <= 15):
  print(hello)
else:
  print(undefine)

 

2.循环语句

Python提供了for循环和while循环

while循环 在给定判断条件为true时,执行循环体,否则退出循环体
for循环 重复执行语句
for嵌套在while中循环 嵌套

循环控制语句可以更改语句执行的顺序。Python支持以下循环控制语句:

 

break语句 在执行过程中终止循环,并跳出整个循环
continue语句 终止当前循环,跳出该次循环,执行下一次循环
pass语句 pass是空语句,是为了保持程序结构的完整性

 

2.1while循环

在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。其基本形式为:

执行语句可以是单个语句或语句块。判断条件可以是任何表达式,任何非零、或非空(null)的值均为true。

当判断条件假false时,循环结束。

while  循环条件:
   执行语句

判断列表中的数的奇偶

#AUTHER:LANIST
numbers = [12,37,5,42,8,3]
even=[]
odd=[]

while len(numbers)>0:
#取出列表的最后一个元素 number
=numbers.pop() if number%2==0: even.append(number) else: odd.append(number) print("偶数为:",even," ","奇数为:",odd)

偶数为: [8, 42, 12]
奇数为: [3, 5, 37]

#AUTHER:LANIST
求偶数
a=1 while a<8: a+=1 if a%2>0: continue print(a)

循环使用 else 语句

在 python 中,while … else 在循环条件为 false 时执行 else 语句块:

 

#AUTHER:LANIST
count = 0

while count < 5:
  print(count,"is less than 5")
  count = count + 1
else:
  print(count,"is not less than 5 ")
结果:
0
is less than 5 1 is less than 5 2 is less than 5 3 is less than 5 4 is less than 5 5 is not less than 5

 

 

 

2.2for循环

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

for语句

for  var in 列表或数组:

  statements(s)

例子:

#打印到1~10
for i in range(1,10):
    print(i)
fruits = [banana,apple,mange]

for fruite in fruits:

  print("当前水果",fruite)

另外一种执行循环的遍历方式是通过索引,如下实例:

#AUTHER:LANIST
fruits=["apple","pear","melon"]
#len()为求列表的长度 range(),为1-3
for index in range(len(fruits)):
    print("当前水果:",fruits[index])

函数 len() 返回列表的长度,即元素的个数。 range返回一个序列的数。

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

 

求1-20的质数

#AUTHER:LANIST
for num in range(1,30):
    #range(2,3)取不到3,break跳出到第一个for循环
    for i in range(2,num):
        if num%i == 0:
            break
    #当执行完第二层的for循环后,没有break,就输出质数
    else:
        print("质数:%s" %num)

 

2.3循环嵌套

Python 语言允许在一个循环体里面嵌入另一个循环。

你可以在循环体内嵌入其他的循环体,如在while循环中可以嵌入for循环, 反之,你可以在for循环中嵌入while循环,在while中嵌套if语句

猜年龄

#AUTHER:LANIST
age=48
times=0
while times<3:
   num=input(" 请输入我的年龄:")
#判断是否为数字
   if not num.isdigit():
      print("请输入数字!")
      continue
   num1=int(num)
   if num1==age:
       print("恭喜你猜中了")
       break
   elif num1>age:
    print("猜大了")
   else:
    print("猜小了")
    times +=1
else:
    print("很遗憾,挑战失败")

乘法口诀

#AUTHER:LANIST
#乘法口诀
for i in range(1,10):
    for j in range(1,i+1):
        print("%sx%s=%s" %(i,j,i*j),end=" ")
#每一行打印完,换行
print()

 

以上是关于python流程控制语句的主要内容,如果未能解决你的问题,请参考以下文章

Python中的流程控制语句

python流程控制语句-if

python基础 -- 04流程控制语句

Python学习-第三周:流程控制

python语言的流程控制

python流程控制语句-if语句