第5讲 条件控制语句


在这里插入图片描述

运算符的优先级

运算符优先级表


条件判断

条件判断语句(if语句)

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

input()函数

  • 该函数用来获取用户的输入
  • input()调用后,程序会立即暂停,等待用户输入
  • 用户输入完内容以后,点击回车程序才会继续向下执行
  • 用户输入完成以后,其所输入的的内容会以返回值得形式返回
  • input接受的参数都是字符串
  • input会阻塞后边的程序
    在这里插入图片描述
    在这里插入图片描述

if-else语句

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

if-elif-else 语句

if 条件表达式1:
	代码块1
elif 条件表达式2:
	代码块2
...
else:
	代码块n
  • while循环的三大要素
    初始值
    对于初始值的判断
    初始值的自增长
  • while循环嵌套
    外层循环的初始值放到外循环外,内循环的初始值一定要放到外循环之内,内循环之外,否则内循环的初始值不会重新被赋值,就无法控制内层循环的循环次数
  • 执行流程:
    if-elif-else语句在执行时,会自上向下依次对条件表达式进行求值判断,
    如果表达式的结果为True,则执行当前代码块,然后语句结束
    如果表达式的结果为False,则继续向下判断,直到找到True为止
    如果所有的表达式都是False,则执行else后的代码块
  • 总结: if-elif-else中只会有一个代码块会执行
    在这里插入图片描述

循环控制

while语句

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

break 和 continue

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

作业:

1.求1000以内所有的水仙花数

在这里插入图片描述

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

在这里插入图片描述

3.1. 猜拳游戏:

  • 出拳 玩家:手动输入 电脑:随机输入
  • 判断输赢: 玩家获胜 电脑获胜 平局
    在这里插入图片描述
import random
T=['剪刀','石头','布']
ww,dw,pj='玩家获胜','电脑获胜','平局'
while True:
    wj = input('请出拳:')
    while wj not in T:
        wj = input("输入错误,请重新输入:")
    else:
        dn = random.choice(T)
        if wj =='剪刀' and dn == '石头' or wj =='石头' and dn == '布' or wj == '布' and dn =='剪刀':
            print('玩家:',wj,'VS','电脑:',dn,dw)
            pass
        elif wj == dn:
            print('玩家:',wj,'VS','电脑:',dn,pj)
            pass
        else:
            print('玩家:',wj,'VS','电脑:',dn,ww)
            pass

99乘法表


while i<10:
    i+=1
    j=0
    while j<i:
        j+=1
        print('{} * {} = {}'.format(i,j,i*j),end='\t')    #format
    print('')
i=0
while i<10:
    i+=1
    j=0
    while j<i:
        j+=1
        print(i,'*',j,'=',i*j,end='\t')
    print('')
i=0
while i<10:
    i+=1
    j=0
    while j<i:
        j+=1
        print('%s'%i,'*','%s'%j,'=','%s'%i*j,end='\t')   #%s
    print('')
i=0
while i<10:
    i+=1
    j=0
    while j<i:
        j+=1
        print(f'{i}*{j}={i*j}',end='\t')   #%f''
    print('')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值