条件控制语句

流程控制

条件判断(if语句)

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

input()函数

  • 可用来获取用户输入
  • 对程序有停止的作用,必须要有输入程序才会继续
def input(*args, **kwargs): # real signature unknown
    """
    Read a string from standard input.  The trailing newline is stripped.
    
    The prompt string, if given, is printed to standard output without a
    trailing newline before reading input.
    
    If the user hits EOF (*nix: Ctrl-D, Windows: Ctrl-Z+Return), raise EOFError.
    On *nix systems, readline is used if available.
    """
    pass

在上述程序中可以看出,input()函数输入的是一个字符串

if-else语句

• 语法:
if 条件表达式 :
  代码块
else :
 代码块

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

if-elif-else 语句

• 语法:
if 条件表达式 :
  代码块
elif 条件表达式 :
  代码块
elif 条件表达式 :
 代码块

else :
  代码块

  • 执行流程:
    • if-elif-else语句在执行时,会自上向下依次对条件表达式进行求值判断,
    • 如果表达式的结果为True,则执行当前代码块,然后语句结束
    • 如果表达式的结果为False,则继续向下判断,直到找到True为止
    • 如果所有的表达式都是False,则执行else后的代码块

循环控制

while语句

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

while循环嵌套

  • 可以通过多重循环来实现目的,在之后的九九乘法表中我们将看到这一功能的具体使用

break和continue

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

作业

5-1九九乘法表
i=1
while i<10:
    j=1
    while j<i+1:
        # print(f'{i}*{j}={i * j}\t', end='')
        print('%dx%d=%d\t'%(i,j,i*j),end='')
        j+=1
    i+=1
    print()
5-2水仙花数
for i in range(100,1000):
    if (i%10)**3+(i//10%10)**3+(i//10//10%10)**3==i:
        print(i)
5-3质数的判断
a=int(input('输入一个数'))
def zspd(a):#判断是不是质数
    if a>2:
        for i in range(2,a//2):
            while a%i!=0:
                print('%d为质数'%a)
                break
            while a%i==0:
                print('%d为合数'%a)
                break
            break

    if a==2:
        print('2为质数')
    if a<2:
        print('错误')
zspd(a)
5-4 石头剪刀布(不使用字典)
import random
comp=random.randint(1,3)
player=int(input('请输入一个数'))
print('电脑出的是%d'%comp)
#1石头
#2剪刀
#3布
if comp==player:
    print('平局')
elif (comp==1 and player==2) or (comp==2 and player==3) or (comp==3 and player==1):
    print('你输了')
elif (comp==1 and player==3) or (comp==2 and player==1) or (comp==3 and player==2):
    print('你赢了')
一个小练习,试试分解质因数
  • 要求输入的是质数
  • 分解的形式是形如:15=3x5
a=int(input())
c=''
print('%d='%a,end='')
for j in range(2,a):
    while a%j==0:
       a=a//j
       c=c+f'{j}x'
       continue
print(c[0:-1],end='')

结合5-3质数的判断函数,还可以更加完善这个程序。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值