python 基础 day2. 条件与循环

1.Python 条件语句

Python 中,选择(条件)语句可细分为 3 种形式

  • if 语句
  • if else 语句
  • if elif else 语句

if语句

if 表达式: 
   代码块
a=1
if a%2==1:
   print("a为数")

if else语句

if 表达式:
     代码块 1
  else:
     代码块 2
a=1
if a%2==1:
   print("a为奇数")
else:
   print("a为偶数")

if elif else 语句

if 表达式 1:
         代码块 1
      elif 表达式 2:
         代码块 2
      elif 表达式 3:
         代码块 3
      ...//可以有零条或多条elif语句
      else:  
         代码块 n
a=1
if a>2:
   print("a大于2")
elif a>1:
   print("a大于1但不大于2")
else:
   print("a小于等于1")

if语句嵌套

a=int(input("输入一个数字:"))
if a>2:
   if a>7:
      print("输入正确")
   else:
      print("再输入一次")
else:
   print("输入错误")

pass语句及其作用
有时候程序需要占一个位、放一条语句,但又不希望这条语句做任何事情,此时就可通过 pass 语句来实现。通过使用 pass 语句,可以让程序更完整。

s = int(input("请输入一个整数: "))
if s > 5:    
   print("大于5")
elif s < 5:    # 空语句,相当于占位符    
   pass
else:    
   print("等于5")

assert断言函数及用法
assert 断言语句用于对一个 bool 表达式进行断言,如果该 bool 表达式为 True,该程序可以继续向下执行;否则程序会引发 AssertionError 错误。
通常,assert 语句用在检查函数参数的属性(是参数是否是按照设想的要求传入),或者作为初期测试和调试过程中的辅助工具。

age= int(input("请输入您的年龄:"))
assert 20 <= age <= 80
print("您输入的年龄在20和80之间")

在if条件句中
如果 if 中的表达式为“真”,程序就会执行 if 中的代码块;否则就会依次判断 elif中的表达式(如果有),如果为“真”,程序就会执行 elif 中的代码块……如果前面所有条件都为“假”,程序就会执行 else后的代码块(如果有)。

2.Python 循环语句

Python提供了for循环和while循环(在Python中没有do…while循环)

循环类型

描述

while

循环在给定的判断条件为 true 时执行循环体,否则退出循环体。

for

循环重复执行语句

嵌套循环

你可以在while循环体中嵌套for循环

while循环

while 判断条件:
            执行语句……

打印 1~100 的所有数字

num = 1    # 当 num 小于100时,会一直执行循环体
while num < 100 :    
      print("num=", num)    # 迭代语句    
      num += 1
print("循环结束!")

for 循环

for 迭代变量 in 字符串|列表|元组|字典|集合:
      代码
name = '张三'
 #变量name,逐个输出各个字符
 for ch in name:    
     print(ch)
 #张
 #三

有时要运用到range()产生随机数

range([start,]stop[,step])

其中step表示间隔数,默认为1,打印中不包含stop所表示的数

for a in range(1,10,2)
   print(a)
 #1 3 5 7 9

嵌套循环

在一个循环体里面嵌入另一个循环。

for 循环嵌套语法:

for a in range(101):
    if a>50:
       print(a)
    else:
       pass

while 循环嵌套语法:

a=0
while a<20:
     if a%2==0:
        print(a,"为偶数")
        a+=1
     else: 
        print(a,"为奇数")
        a+=1

3.循环控制语句

控制语句

描述

break 语句

在语句块执行过程中终止循环,并且跳出整个循环

continue 语句

在语句块执行过程中终止当前循环,跳出该次循环,执行下一次循环。

pass 语句

pass是空语句,是为了保持程序结构的完整性。

循环结构中的else用法

#while循环中
i = 0
while i < 5:    
      print(i, '小于5')    
      i += 1
else:    
      print(i, '大于或等于5 ')
#for循环中
a_list = [330, 1.4, 50, 'fkit', -3.5]
for ele in a_list:
    print('元素: ', ele)
else:
    # 访问循环计数器的值,依然等于最后一个元素的值
    print('else块: ', ele)

元素: 330
元素: 1.4
元素: 50
元素: fkit
元素: -3.5
else块: -3.5

for 循环使用 else 代码块,当 for 循环把区间、元组或列表的所有元素遍历一次之后, for 循环会执行 else 代码块,在 else 代码块中,迭代变量的值依然等于最后一个元素的值。

在执行 while 循环或者 for 循环时,只要循环条件满足,程序将会一直执行循环体
Python 提供了 2 种强制离开当前循环体的办法:

  1. 使用 continue 语句,可以跳过执行本次循环体中剩余的代码,转而执行下一次的循环
  2. 只用 break 语句,可以完全终止当前循环。

break语句
break 用于完全结束一个循环,跳出循环体。

for i in range(10) :
    print("i的值是: ", i)
    if i == 2 :  # 执行该语句时将结束循环
       break

continue语句

for i in range(3) :    
    print("i的值是: ", i)    
    if i == 2 :        # 忽略本次循环后的语句        
       continue