分支与循环------Python

一、流程控制

流程控制 -- 通过代码控制程序的执行过程

  1. 顺序结构:代码从上往下按顺序执行,而且每一条语句只执行一次。(默认)
  2. 分支结构:执行代码的时候可以根据条件选择执行代码。(if)
  3. 循环结构:让代码重复执行。(for、while)

 age = 6
if age < 18:
    print('未成年')
else:
    print('成年')

 二、分支结构

1、if单分支结构

  • 如果xxx就xxx(满足条件就执行某个操作,条件不满足的时候就不执行)

 

"""
1)语法:
if 条件语句:
     代码块
     
2)说明:
if        -    关键字;固定写法
条件语句   -    一般写判断语句,本质可以写任何有结果的表达式。
:        -    固定写法
代码块     -    结构上,和if保持一个缩进(tab)的一条或者多条语句(至少一条)
               逻辑上,代码块就是满足条件才会执行的代码
"""

num = 20
if num % 2 == 0:
    print('偶数')
else:
    print('奇数')

 #练习1:判断一个三位数的个位数和百位数相等就打印”回文数“

num = 828
if num % 10 == num // 100:
    print(f'{num}是回文数')
else:
    print(f'{num}不是回文数') 

 #练习2:根据年份在控制台打印闰年

year = 2009
if (year % 4 == 0 and year % 100 != 0) or year % 400 == 0:
    print(f'{year}是闰年')
else:
    print(f'{year}不是闰年') 

2、if双分支结构

  • 如果xxx就xxx否则就xxx(满足条件执行某个操作,不满足执行另外一个操作)

 num = 20
if num % 2 == 0:
    print(f'{num}是偶数')
else:
    print(f'{num}是奇数')

 案例2:根据变量x中数据的类型打印‘数字数据’或者‘非数字数据’

x = 'abc'
if type(x) == int or type(x) == float:
    print(f'{x}是数字数据')
else:
    print(f'{x}是非数字数据') 

3、if多分支结构

  • 如果xxx就xxx,如果xxx就xxx,如果xxx就xxx(根据不同的条件做不同的事情)

 """
方法1 : 使用多个if单分支结构 - 如果多个条件之间存在其中一个条件成立,其他条件也可能成立
if 条件1:
    代码块1
if 条件2:
    代码块2
...
if 条件N:
    代码块N
    
方法2 :使用if-elif结构 - 如果多个条件之间存在其中一个条件成立,其他条件绝对不会成立
if 条件1:
    代码块1
elif 条件2:
    代码块2
...
else 条件N:
    代码块N
"""

案例1 :根据分数值打印:优秀(>=90),良好( >=80,<90),中等(>=60,<80),不及格(<60) 

# 方法1
score = 77
if score >= 90:
    print('优秀')
if 90 > score >= 80:
    print('良好')
if 80 > score >= 60:
    print('中等')
if score < 60:
    print('不及格')

# 方法2
score = 88
if 100 > score > 0:
    if score >= 90:
        print('优秀')
    elif score >= 80:
        print('良好')
    elif score >= 60:
        print('中等')
    else:
        print('不及格')
else:
    print('成绩无效')

4.分支嵌套

#案例:根据num的值打印‘偶数’、‘奇数’和‘4的倍数’

num = 34
if num % 2 == 0:
    print('偶数')
    if num % 4 == 0:
        print('4的倍数')
else:
    print('奇数') 

三、for 循环

1、for循环  --   让代码循环

'''
1)语法:
for 变量 in 序列:
    循环体
    
2)说明:
for      -        关键字;固定写法
变量      -        变量名(已经定义过的变量或者没有定义过的都可以)
in       -        关键字;固定写法
序列      -        容器型数据类型的数据(可以同时保存多个值),例如:字符串、列表、字典、元组、集合、迭代器、生成器、range  
:        -        固定写法   
循环体    -        结构上,就是和for保持一个缩进的一条或者多条语句(至少一条)
                  逻辑上,循环体就是需要重复执行的代码

3)循环原理:
让变量取序列中取值,一个一个的取,取完为止,每取一个值就执行一次循环体
如果要控制for循环次数,只需要控制序列中元素的个数         
'''

 案例 : 控制程序打印五次‘hello world!’

for x in range(5):
    print('hello world!')

 2、range函数

创建等差数列

"""
1)range(N)         -    创建[0,N)的等差数列,差为1;
                         例如:range(5) - 0、1、2、3、4
2)range(M,N)       -    创建[M,N)的等差数列,差为1;
                         例如:range(1,5) - 1、2、3、4
3)range(M,N,step)  -    创建[M,N)的等差数列,差为step
                         例如:range(2,11,2) - 2,4,6,8,10
"""

练习 : 使用range函数创建以下等差数列 

 

# 11 12 13 14 15    range(11, 16)
# 11 13 15 17 19    range(11, 20,2)
# -2 -1 0 1 2       range(-2, 3)
# 0 5 10 15 20      range(0, 21, 5)
# 10 8 6 4 2        range(10, 1, -2)

for x in range(10, 1, -2):
    print(x)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值