Python核心基础|第五讲 流程控制及作业

在这里插入图片描述

条件判断语句(if语句)

• 执行的流程:

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

• 语法:if 条件表达式 :

• i代码块代码块中保存着一组代码,同一个代码块中的代码,要么都执行要么都不执 行
• i代码块以缩进开始,直到代码恢复到之前的缩进级别时结束 • 代码块就是一种为代码分组的机制

在这里插入图片描述

  • 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语句
  • 循环语句可以使指定的代码块重复指定的次数.循环语句分成两种,while循环 和 for循环
  • 语法:
    while 条件表达式 :
    代码块
    else:
    代码块

在这里插入图片描述

循环嵌套

i = 0
while i < 5:
    i += 1
    print(end='\n')
    j = 0
    while j < i:
        print('*', end='')
        j += 1

i = 0
while i < 9:
    i += 1
    j = 0
    while j < i:
        j += 1
        print('%s*%s=%s' % (j, i, j*i), end='\t')

    print()

i = 0
while i < 9:
    i += 1
    j = 0
    while j < i:
        j += 1
        print(f'{i}*{j}={i*j}', end='\t')

    print()

在这里插入图片描述

break和continue

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

random模块

  • random.randint(0,9)

作业

  • 1.求1000以内所有的水仙花数
for i in range(100,1000):
        m = i // 100    #整除获得百位数
        n = (i % 100) // 10        #十位数
        k = i % 10       #个位数
        if m**3 + n ** 3 + k ** 3 == i:
            print(i)```

C:\Users\giser\AppData\Local\Programs\Python\Python37\python.exe D:/pycharm/pythonbasic/day05.py
153
370
371
407

Process finished with exit code 0

在这里插入图片描述

  • 2.获取用户输入的任意数,判断其是否是质数?
number = int(input("请输入待判断的数 number = "))
for i in range(2, number):
    if number % i == 0:
        break
if i == number - 1:
    print("%d是质数" % (number))
else:
    print("%d不是质数" % (number))

在这里插入图片描述

  • 3.猜拳游戏:

    • 出拳 玩家:手动输入 电脑:随机输入
    • 判断输赢: 玩家获胜 电脑获胜 平局

import random

player_str = input('输入你的选择,石头/1 剪刀/2 布/3\n')
player = int(player_str)
computer = random.randint(1, 3)  
if player - computer == -1 or player - computer == 2:
    print('你赢了')
elif computer - player == -1 or computer - player == 2:
    print('电脑赢了')
else:
    print('平局')
print('因为电脑输出了', computer)

在这里插入图片描述