Python-05 条件控制语句(条件判断与循环)

目录

    • 1. 条件判断语句(if语句)
    • 2. input() 函数
    • 3. if-else语句
    • 4. if-elif-else 语句
    • 5. while语句
    • 6. 循环嵌套
    • 7. break和continue
    • 8.练习
        • 8.1求1000以内所有的水仙花数
        • 8.2判断输入的数是否是质数
        • 8.3九九乘法表

1. 条件判断语句(if语句)

  • 语法:
    if 条件表达式 :
    代码块
  • 执行流程:
    if语句在执行时,会先对条件表达式进行求值判断,
    如果为True,则执行if后的语句
    如果为False,则不执行
  • 总结:
    代码块代码块中保存着一组代码,同一个代码块中的代码,要么都执行要么都不执行
    代码块以缩进开始,直到代码恢复到之前的缩进级别时结束
    代码块就是一种为代码分组的机制

2. input() 函数

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

3. if-else语句

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

4. 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中只会有一个代码块会执行

5. while语句

  • 循环语句可以使指定的代码块重复指定的次数.循环语句分成两种,while循环 和 for循环
  • 语法:
  while 条件表达式 :
      代码块
  else:
       代码块
  • 执行流程:
    while语句在执行时,会对后面的条件表达式进行求值判断,如果表达式的结果为True,则执行循环体的逻辑
    循环体执行完毕,继续对表达式进行求值判断,以此内推直到条件表达式的结果为False,则执行else中的代码块

6. 循环嵌套

  • Python 语言允许在一个循环体里面嵌入另一个循环。
  • 语法
while 表达式:
   while 表达式:
      代码块
   代码块
for 变量 in 循环规则:
   for 变量 in 循环规则:
       代码块
   代码块

7. break和continue

  • break 可以用来立即退出循环语句,包括else语句
for i in range(10):
    if i==5:
        continue
    print(i,end=' ')
print()
for i in range(10):
    if i==5:
        break
    print(i,end=' ')
0 1 2 3 4 6 7 8 9 
0 1 2 3 4 
  • continue 用来跳过当前循环

8.练习

8.1求1000以内所有的水仙花数

for a in range(1, 10):
    for b in range(0, 10):
        for c in range(0, 10):
             if a * 100 + b * 10 + c == a ** 3 + b ** 3 + c ** 3:
                print(a, b, c,sep='')
153
370
371
407

8.2判断输入的数是否是质数

n = int(input('请输入一个大于等于2的正整数:'))
i=2
while i < (n ** 1 / 2 + 1):
    if n % i == 0:
        print('%d不是质数' % n)
        break
    i+=1
else:
    print('%d是质数' % n)
请输入一个大于等于2的正整数:5
5是质数

8.3九九乘法表

for i in range(1,10):
    for j in range(i):
        j += 1
        print("%d*%d=%2d" %(i, j, i*j), end='  ')
    print()
1*1= 1  
2*1= 2  2*2= 4  
3*1= 3  3*2= 6  3*3= 9  
4*1= 4  4*2= 8  4*3=12  4*4=16  
5*1= 5  5*2=10  5*3=15  5*4=20  5*5=25  
6*1= 6  6*2=12  6*3=18  6*4=24  6*5=30  6*6=36  
7*1= 7  7*2=14  7*3=21  7*4=28  7*5=35  7*6=42  7*7=49  
8*1= 8  8*2=16  8*3=24  8*4=32  8*5=40  8*6=48  8*7=56  8*8=64  
9*1= 9  9*2=18  9*3=27  9*4=36  9*5=45  9*6=54  9*7=63  9*8=72  9*9=81  

你可能感兴趣的:(#,Python基础)