day4-分支和循环

day4-分支和循环

1.流程控制

  1. 流程控制 - 通过代码控制程序执行的顺序
  2. 三种程序执行的方式
    1. 顺序结构:代码从上往下按顺序一条条的执行,每条语句只执行一次(默认)
    2. 分支结构:执行代码的时候根据条件选择执行或者不执行某些代码
    3. 循环结构:让代码重复执行-代码写一遍重复执行多次(for、while)
1) 顺序结构
print('你好')
print(100)
# input()
print(' hello world!')

2) 分支结构
age = 19
if age >= 18:
    print('成年')
else:
    print('未成年')

3) 循环结构
for _ in range(10):
    print('python')

2.分支结构

if单分支结构

  1. 语法:

    if 条件语句:
    代码段

  2. 说明

    1. if - 关键字;固定写法
    2. 条件语句 - 条件对应的代码(必须是一个有结果的表达式)
    3. 冒号 - 固定写法(必须是英文输入法下面的冒号)
    4. 代码段 - 结构上,就是和if保持一个缩进的一条或者多条语句,至少一条;
      逻辑上,代码段就是满足条件才执行的代码
  3. 执行过程

    先判断条件语句是否成立,如果成立就执行代码段,否则代码段就不执行

案例:
score = 98
if score > 80:
    print('通过')
    print('拿奖金')

练习1:根据num的值打印‘奇数’
num = 79
if num % 2 != 0:
    print('奇数')

练习2︰判断指定的三位数是否是水仙花数,如果是就打印'水仙花数'
# 水仙花:一个三位数各个位数的立方和等于他本身, 153 == 1**3+5**3+3**3
num = 342
if num == (num // 100) ** 3 + (num // 10 % 10) ** 3 + (num % 10) ** 3:
    print('水仙花数')

if双分支结构

​ 语法:

​ if 条件语句:
​ 代码段1(满足条件需要执行的代码)
​ else:
​ 代码段2(不满足条件的时候需要执行的代码)

练习1:根据num的值打印‘奇数’或者‘偶数’
num = 80
if num % 2 == 0:
    print('偶数')
else:
    print('奇数')

练习2:根据age的值打印’成年‘或者’未成年‘
age = 29
if age >= 18:
    print('成年')
else:
    print('未成年')

练习3:如果num大于10就让num减5,否则将num加5
num = 89
if num > 10:
    print(num - 5)
else:
    print(num + 5)

if多分支结构

​ 方法1: -
​ if 条件语句1:
代码段1
​ if 条件语句2:
代码段2
​ if 条件语句3:
​ 代码段3
​ …

​ 方法2: - 使用if-elif结构(如果其中一个条件成立,其他条件绝对不会成立的时候用)
​ if 条件语句1:
​ 代码段1
​ elif 条件语句2:
​ 代码段2
​ elif 条件语句3:
​ 代码段3
​ …
​ else:
​ 代码段N

执行特点:后面的条件是在前面的条件不成立的情况下进行判断。

案例:如果考试考了100- 买车;考了90多分 - 买鞋;考了80多分 - 吃火锅;80分以下 - 打死
score = 100
方法1if score == 100:
    print('买车')
if 90 <= score < 100:
    print('买鞋')
if 80 <= score < 90:
    print('吃火锅')
if score < 80:
    print('打死')

方法2if score < 80:
    print('打死')
elif score < 90:
    print('吃火锅')
elif score < 100:
    print('买鞋')
else:
    print('买车')


练习1:.如果num是偶数就打印'偶数,如果是奇数就打印'奇数’,如果能被5整除就打印‘5的倍数’
num = 45
if num % 2 == 0:
    print('偶数')
    if num % 5 == 0:
        print('5的倍数')
else:
    print('奇数')
    if num % 5 == 0:
        print('5的倍数')

3.for循环

for循环

  1. 语法:

    for 变量 in 序列:
    循环体

  2. 说明

    a. for - 关键字;固定写法
    b. 变量 - 变量名
    c. in - 关键字;固定写法
    d. 序列 - 容器型数据类型的数据就是序列;常见的容器型数据:字符串,列表,元组,集合,字典,迭代器,生成器,range等
    e. 冒号 - 固定写法
    f. 循环体 - 结构上,就是和for保持一个缩进的一条或多条语句,至少一条;
    逻辑上,需要重复执行的代码

  3. 执行过程

    • 让变量去序列中取值,一个一个的取,取完为止,每取一个值就执行一次循环体。
    • 循环次数由序列中元素的个数决定。
案例:使用for循环控制程序打印'hello world!'5for x in 'asvbg':
    print('hello world!')

range函数 - 创建等差数列

  • range(N) - 创建[0,N)的等差数列,差是1;例如:range(5) - 0,1,2,3,4

  • range(M,N) - 创建[M,N)的等差数列,差是1;例如: range(5,10) - 5,6,7,8,9

  • range(N,N,step) - 创建[N,N)的等差数列,差是step;例如:range(5,20,3) - 5,8,11,14,17
    range(10,1,-2) - 10,8,6,4

    for x in range(5):
        print(x)
    
    for x in range(5,10):
        print(x)
    
    for x in range(5,20,3):
        print(x, end=' ')
    
    for x in range(10,1,-2):
        print(x, end=' ')
    
    练习:写出以下等差数列对应range函数
    # 0,1,2,3,4,5,
    for x in range(6):
        print(x,end=' ')
    
    # 1,3,5,7,9,11
    for x in range(1,13,2):
        print(x,end=' ')
    
    # 90,100,110,120,130
    for x in range(90,140,10):
        print(x,end=' ')
    
    # 9,8,7,6,5
    for x in range(9,4,-1):
        print(x,end=' ')
    
    # 19, 16, 13
    for x in range(19,10,-3):
        print(x,end=' ')
    
    # 2,1,0,-1,-2
    for x in range(2,-3,-1):
        print(x,end=' ')
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值