美文网首页
分支结构、循环

分支结构、循环

作者: 有趣的恶魔QAQ | 来源:发表于2018-12-28 20:54 被阅读0次

一、if的语句及使用

知识点扩充:python中的分支结构只有if语句 ,没有switch

1.什么时候需要用到if语句(在需要满足某个条件的前提下)

2.怎么使用if语句

  • 语法1:
      if 条件语句:
      代码段1

  • 说明:
      if - 关键字,是如果的意思

  • 条件语句 --- 任意一个有结果的语句,最好结果是布尔,如果不是布尔,在返回结果时会转换成布尔

  • : --- 固定写法。在Python中,只要有冒号,冒号后面第一句必须有缩进,冒号缩进组合形成代码段,相当于其他语言中的大括号

代码段1 - 和if保持一个缩进的语句,可以是一行,也可以是多行

  • 执行过程:先判断条件语句的结果是否为True,如果为True就执行代码段1,否则执行其他语句。

如果为False,就不执行代码段1,直接执行其他语句

age = 16
if age >= 16:
    print('可以判死刑了!')
print('呵呵呵呵呵呵')
注意:和if保持同样缩进的语句要满足条件才会被执行,不在同一缩进的语句,即便不满足条件,也会被执行。
  • 练习:输入一个数,如果这个数能够被3整除,就打印“这个数是3的倍数”
num = input('请输入一个整数:')
if int(num) % 3 == 0:
    print('%d这个数是3的倍数!' % int(num))

结构2:if - else 结构
  • 语法:
      if 条件语句:
      代码段1
    else :
      代码段2

  • 说明:
      else - 关键字,固定写法。相当于否则,不满足if条件的其他情况

  • 执行过程:先判断条件语句是否为True,为True则执行代码段1,否则执行代码段2

  • 练习:输入一个数,如果这个数是偶数就打印“xx是偶数”,不是就打印“这个数是奇数”
num1 = int(input('请输入一个整数:'))
if num1 % 2 == 0:
    print('%d是偶数' % num1)
else:
    print('%d是奇数' % num1)
  • 练习:输入一个字符串,判断字符串的第一个字符是不是小写字母,如果是将字符串第一个字符转换成大写字母并打印,否则直接打印
str1 = input('请输入一个字符串:')
first_char = str1[0]
if 'a'<= first_char <= 'z':
    print(first_char.upper() + str1[1:])
else:
    print(str1)

结构3:if - elif - else

  • 语法:
      if 条件语句1:
        代码段1
      elif 条件语句2:
       代码段2
      elif 条件语句3:
       代码段3
       ...
       else:
       代码段n

  • 说明:
    elif - 关键字:在前面条件不满足的情况下,判断其他条件是否满足

  • 执行过程:先判断条件语句1是否成了,如果成立直接执行代码段1,然后整个if结构结束;如果不成立,直接判断条件语句二,如果成立整个if结构结束,若不成立则执行下一个条件语句,依次类推,直到整个if结构条件语句执行完之后直接执行else,整个if结构结束

注意:后面语句的判断都是在前面条件语句不成立的情况下执行的,根据情况后面的else结构可以没有

salary = 20000
if salary <= 5000:
    print('买空调')
elif salary <= 10000:
    print('买冰箱')
elif salary <= 15000:
    print('买家具')
elif salary <= 20000:
    print('买机车')
else:
    print('想买啥就买啥')
  • 练习:

    欢迎XXX:
    
    1.  添加学生
    2.  查看学生
    3.  修改学生信息
    4.  删除学生
    5.  返回
    
num2 = int(input('请输入功能键:'))
if num2 == 1:
    print('请输入学生信息:')
elif num2 == 2:
    print('正在查看学生信息!')
elif num2 == 3:
    print('开始修改学生信息!')
elif num2 == 4:
    print('正在对当前学生进行删除')
elif num2 == 5:
    print('正在返回主页面!')
else:
    print('请按照需要输入功能键!')
知识点补充:Python中可以使用三个双引号或者三个单引号将字符串括起来,表示一个字符串,在这种字符串中可以输入回车换行
  • 例如:
str3 = '''
 ====================================
 欢迎XXX:

      1.  添加学生
      2.  查看学生
      3.  修改学生信息
      4.  删除学生
      5.  返回
 ======================================
print(str3)

1.if的嵌套

即在if结构中还可以使用if结构

注意:在else中也能嵌套if、elif、else
  • 练习:
    输入一个整数,判断他是否是偶数,如果是偶数的话就打印“xxx是偶数”,同时判断它是否能被4整除,如果可以就再打印“xxx还能被4整除”
num = int(input('请输入一个整数:'))
if num%2 == 0:
    print('%是偶数' % num)
    if num%4 == 0:
        print('%d还能被4整除' % num)
    else:
        print('%d是偶数但不能被4整除' % num)
else:
    print('%d是奇数' % num)

2.Python中的三目运算符

  • C/Java/Js语言中有一个三目运算符: 表达式?值1:值2 --> 判断表示式值是否为True,为True整个表达式值为1
  • python中的三目运算符: 值1 if 表达式 else 值2 --> 判断表达式的值是否为True,为True表达式值为值1,否则为值2
应用于根据某个条件是否成立,获取不同的值的时候
num1, num2 = 520, 1314
max = num1 if num1 > num2 else num2
print(max)

二、for循环

python支持的循环有两种,分别是for循环和while循环

1.for循环
  • 语法:
     for 变量 in 序列:
      循环体

  • 说明:
    1. for - 关键字
    2. 变量 - 变量名(可以是已经赋值过变量,也可以是新的变量,一般是新的变量)
    3. in - 固定写法
    4. 序列 - 属于序列的数据,Python中的序列有:字符串、列表、字典、集合、元祖、range、迭代器、生成器
    5. : - 固定写法,有冒号的地方,下面就有缩进
    6. 循环体 - 需要重复执行的代码;循环体需要和for保持同一个缩进

  • 执行过程
    让变量取序列中取值,一个一个的取,取完为止,每取一个值,执行一次循环体(序列中元素的个数决定了循环体执行的次数)

for char in 'chener':
    print('520')
    print(char)
  • 练习:给一个字符串“hosee 23jh!hs89_=sssAsK”,统计出这个字符串中的数字的个数
count = 0
for char in 'hosee 23jh!hs89_=sssAsK':
    if '0' <= char <= '9':
        count += 1
print('这个字符串里面有%d个字符' % count)
  • range函数
  • range(数字) --- 产生数字序列 0 -- (N-1)(N必须为整数)
  • range(M,N) --- 产生数字序列 M -- (N-1) (M,N必须是整数,N > M)
  • range(M,N,step) --- 从M开始,每次值加step产生下一个数字,直到N前一个为止(M,N必须是整数,step>0,N>M;step<0,N<M)

for num2 in range(10):
print('num:', num2)

  • 练习:统计100以内能被13或者7整除的数的和

sum1 = 0
for num3 in range(1, 100):
if num3 % 13 == 0 or num3 % 7 == 0:
sum1 += num3
print(sum1)

  • 通过遍历字符串下标遍历字符串

str = 'chen er'
for index in range(len(str)):
print(str[index])

三、while循环

  • 语法:
     while 条件语句:
       循环体

  • 说明:
       1. while - 关键字,当...的时候
       2. 条件语句 - 和if后边的条件要求一样(除赋值语句不行外其他都可以)
       3. 循环体 - 需要重复执行的语句写在循环体中,循环体和while保持缩进

  • 执行过程
    当程序执行到while循环,先判断条件语句是否为True,为True就执行一次循环体,执行完循环体之后再判断条件语句是否为True,以此类推,直到判断条件语句的结果为False循环结束

for循环和while循环的选择

  for能做到的while都能做到,while能做到的循环for循环不一定能做到

  • 使用for: 遍历序列、 循环次数是确定的

  • 使用while: 死循环、 循环次数不确定

  • 练习:录入学生的成绩,录入过程以输入“end”来结束成绩的录入

chengji = input('请输入成绩:')
while chengji != 'end':
  chengji = input('请输入成绩:')

注册账号输入密码,直到输入密码合理为止(要求密码至少6位)

password = input('请输入密码:')
while len(password) < 6:
  password = input('请输入密码:')

四、continue语句和break语句

- continue

- continue是Python中的关键字,只能用于循环体中
  • 功能:当循环体执行到continue时结束当次循环,直接进入下次循环的判断(在for循环中相当于让变量去取下一个值;while循环中就是直接判断条件语句是否为True)

- break

-break是Python中的关键字,只能用于循环体中
  • 功能:执行循环体的时候遇到break,循环直接结束,直接执行循环后边的其他语句

  • else在循环中的用法:

1.for循环中

 for 变量 in 序列:
  循环体
 else:
  代码段

2.while循环中

 while 条件语句:
   循环体
 else:
  代码段

1.求1到100之间所有数的和、平均值

for循环

sum = 0
for num in range(1, 101):
  sum += num
   num += 1
print('所有数的和为%d,平均值为%.1f' % (sum, sum/100))

while循环

num1 = 1
sum1 = 0
while num1 <= 100:
  sum1 += num1
  num1 += 1
print('所有数的和为%d,平均值为%.1f' % (sum1, sum1/100))

2.计算1-100之间能被3整除的数的和

for num2 in range(1, 101):
    if num2 % 3 == 0:
        sum2 += num2
        num2 += 1
print('1-100之间能被3整除的数的和为%d' % sum2)
sum3 = 0
while num3 <= 100:
    if num3 % 3 == 0:
        sum3 += num3
    num3 += 1
print('1-100之间能被3整除的数的和为%d' % sum3)

3.计算1-100之间不能被7整除的数的和

for num4 in range(0, 101):
    if num4 % 7 != 0:
        sum4 += num4
    num4 += 1
print('1-100之间不能被7整除的数的和为%d' % sum4)
sum4 = 0
while num4 <= 100:
    if num4 % 7 != 0:
        sum4 += num4
    num4 += 1
print('1-100之间不能被7整除的数的和为%d' % sum4)

相关文章

  • Python分支循环总结

    一,分支结构 1,单分支结构 2,二分支结构 3,多分支结构 4,分支嵌套: 二,循环结构 1,while循环 2...

  • Linux awk 命令详解(二) if 分支 数组

    目录 一、awk if分支结构二、awk数组 for循环 一、awk if分支结构 if分支结构(单分支、双分支、...

  • [JS基础]笔记四

    js流程控制语句 流程控制 顺序结构、分支结构、循环结构 分支结构 if 分支结构 if else 双分支结构语句...

  • 代码执行结构

    分类:顺序结构,分支结构,循环结构 分支结构--if分支 基本语法 示例: 触发器结合if 分支,判断商品是否足够...

  • 04-IF条件语句

    程序执行流程 1-顺序结构 2-选择分支结构 3-循环结构 选择分支结构(单分支,双分支,多分支,分支嵌...

  • 语法结构

    顺序结构 分支结构 课堂任务 单分支例题: 多分支例题 循环结构 for while do...while

  • 【python基础笔记3】程序的控制结构

    分支结构 循环结构 遍历循环:for语句for <循环变量> in <遍历结构>:<语句块>例如:for i in...

  • 3.路程控制

    一。程序结构 顺序结构 分支结构(选择结构) 循环结构 二。分支结构 1.if-else 构成分支 结构1: if...

  • Go语言学习笔记06.流程控制

    分支结构 循环结构 for循环 range迭代 break和continue goto

  • 003-控制流程语句if,elseif,switch,for,w

    控制流程语句 分支结构 循环结构 分支结构 简单的if结构 if...else结构 多重if结构 嵌套if结构 总...

网友评论

      本文标题:分支结构、循环

      本文链接:https://www.haomeiwen.com/subject/alselqtx.html