码农学技术————六个月学习python全栈【Day05】

今日学习目标:

知道什么是流程控制,理解和运用if分支结构,循环结构(while循环),以及关键字break,continue


今日学习内容:

内容简要:

  • 流程控制理论(很重要)
  • 流程控制——分支结构
  • 流程控制——循环结构(while循环)

内容详细:

一,流程控制理论(很重要)

  • 什么是流程控制

    控制事物的执行流程

  • 执行流程的分类

名称详情
顺序结构顺序结构是程序按照现行顺序依次执行的一种运行结构。例如:语句块1=>语句块2=>……=>语句块n
分支结构分支结构是程序按照判断条件选择不同执行路径的运行方式。最基础的是二分支结构,即判断条件产生“是”或“否”的结果,并根据这个结构选择不同路线,二分支结构组合形成多分支结构。
循环结构循环结构是按照判断条件结果向后执行的一张方式。即根据结果确定是否将循环体中的语句再次执行的一种结果。

在这里插入图片描述

扩展知识

1.在python中使用缩进来表示代码的从属关系
	if 18 > 19:
        print('嘿嘿嘿')  # 属于if判断 是否执行由if判断决定
        """我们也将缩进的代码称之为某某某的子代码"""
2.并不是所有的代码都可以有子代码(从属的代码)
	目前可以有的
    	if 
        else
3.如果多行代码属于同一个父代码 那么这多行代码需要保证相同的缩进
	在python中推荐使用四个空格来表示缩进(四个好看一些)
4.具有相同缩进量的代码彼此之间按照顺序结构执行 没有从属关系 平起平坐
"""ps:如果一行代码的结尾是冒号结束 那么紧挨着的下一行必缩进
	冒号的含义相当于是要拥有子代码
"""

流程控制——分支结构

1.单if分支

结构基本语法

if 条件表达式
      语句一
      语句二
      语句三
      ......

实例如下

# 先定义一个名字为'Alice'
name = 'Alice'
# 判断名字是否为'Alice'
if name == 'Alice':
  print('Hi, Alice.')

运行结果
请添加图片描述

实例流程图如下
在这里插入图片描述

特点

  • 条件表达式就是计算结果必须为布尔值的表达式
  • 表达式后面的冒号不能少
  • 注意if后面出现的语句,如果属于if语句块,则必须同一缩进等级
  • 条件表达式结果为True执行if后面的缩进的语句块

2.if与else分支

结构基本语法

      if条件表达式:
          语句一
          语句二
          ...
      else:
          语句一
          语句二
          ...

实例如下

# 定义一个名字为'Bob'
name = 'Bob'
# 判断名字是否为'Alice'
if name == 'Alice':
    # 是的话输出'Hi, Alice.'
    print('Hi, Alice.')
else:
    # 不是的话输出'Hello, stranger.'
    print('Hello, stranger.')

运行结果
在这里插入图片描述

实例流程图如下
在这里插入图片描述

特点

  • 条件表达式就是计算结果必须为布尔值的表达式
  • 表达式后面的冒号不能少
  • 注意if后面出现的语句,如果属于if语句块,则必须同一缩进等级
  • 条件表达式结果为True执行if后面的缩进的语句块反之执行else后面的缩进的语句块

3.if与elif与else分支

结构基本语法

if 条件表达式:
语句1elif 条件表达式:
语句1elif 条件表达式:
语句1else:
语句1
… …

实例如下

# 定义一个名字为'Bob'
name = 'Bob'
# 定义一个年龄为30
age = 30
#判断名字是否为'Alice'
if name == 'Alice':
    print('Hi, Alice.')
#判断年龄是否小于12
elif age < 12:
    print('You are not Alice, kiddo.')
#以上条件不满足的话就输出'You are neither Alice nor a little kid.'
else:
    print('You are neither Alice nor a little kid.')

运行结果
在这里插入图片描述

实例流程图如下
在这里插入图片描述

特点

  • elif可以有好多个,根据实际情况
  • 多路分支最多只会执行一种情况
  • 三者使用时缩进相同
  • if 结构中仅if可以独立存在

4.if的嵌套(可以延后掌握)

结构基本语法

    if 条件表达式:
        语句1
        if 条件表达式:
            语句2
        else:
            语句3
    else:
        语句4

实例如下

# 4.if的嵌套(可以延后掌握)
# 4.如果女孩子的年龄大于38说 不好意思认错人了 否则上去要微信
# 如果成功了 则去吃饭 看电影 逛商场 直至天黑 宿舍锁门了!!!
age = 22
is_success = True
if age < 38:
    print('我观察你很久了 想了想还是勇气给你要个联系方式')
    if is_success:
        print('吃饭 看电影 天黑了 睡觉觉')
    else:
        print('去你妹的')
else:
    print('哎呀不好意思 认错人了')

运行结果
在这里插入图片描述

实例流程图如下
在这里插入图片描述


.

分支结构练习题

  • 1,简单登录
# 1.编写一个用户登录程序
# 	如果用户名是jason并且密码是123 则打印登录成功
#   如果不是则打印用户名或密码错误
"""
    前期写程序可以先用注释编写思路 之后再写对应的代码
    相当于将中文翻译成python代码而已
"""
# 1.获取用户的用户名和密码
username = input('username>>>:')
password = input('password>>>:')
# 2.校验/判断用户名和密码是否正确
if username == 'jason' and password == '123':
    print('欢迎老板光临')
else:
    print('用户名或密码错误!!!')

运行结果
在这里插入图片描述

  • 2.成绩评判系统
# 2.编写一个成绩评判系统
# 	  如果成绩大于90 则打印优秀
#     如果成绩大于80 则打印良好
#     如果成绩大于70 则打印一般
#     如果成绩大于60 则打印及格
#     如果成绩小于60 则打印挂科
# 1.先获取学生的成绩
score = input('score>>>:')
score = int(score)  # 将字符串的成绩转成整型的成绩(先忽略)
# 2.罗列对应的条件
if score > 90:
    print('优秀')
elif score > 80:
    print('良好')
elif score > 70:
    print('一般')
elif score > 60:
    print('及格')
else:
    print('挂科')

运行结果
在这里插入图片描述


流程控制——循环结构(while循环)

结构基本语法

"""
	语法结构
		while 条件:
			条件成立之后执行的循环体代码
	1.先判断条件是否成立 如果成立则执行循环体代码
	2.循环体代码执行完毕后 再次判断条件是否成立 如果成立则继续执行循环体代码 如果不成立则跳出循环
"""

实例如下

#初始化变量spam
spam = 0
#循环五次
while spam < 5:
    #每次循环打印输出'Hello, world.'
    print('Hello, world.')
    #每次循环累加
    spam = spam + 1

运行结果
在这里插入图片描述

实例流程图如下
在这里插入图片描述

特点

  • 当while后的条件计算为True时一直循环,循环过程为执行完代码块后又回到代码块的第一行继续执行代码。

流程控制——循环结构(while循环——关键字(break))

特点

  • 当在while循环中使用break时,循环立刻停止。在使用 while True: 循环时很有用,比如应用于输入正确用户名的场景下。
  • break是用于直接结束本层循环,break只能结束所在的那一层循环

实例如下

# 恒循环
while True:
    # 获取输入的名字
    name = input('Please type your name>>')
    # 判断是否为'your name'
    if name == 'your name':
        # 是的话结束循环
        break
# 打印'Thank you!'
print('Thank you!')

运行结果
在这里插入图片描述

实例流程图如下
在这里插入图片描述


流程控制——循环结构(while循环——关键字(continue))

特点

  • 用于在执行代码块时立即回到循环起点,一般放在循环中间的位置。
  • continu是用于结束本次循环 直接开始下一次循环

实例如下

while True:
    print('who are you?')
    name = input()
    if name != 'Joe':
        continue
    print('Hello,Joe.What is the password?(It is a fish)')
    password = input()
    if password == 'swordfish':
        break
print('Access Granted.')

运行结果
在这里插入图片描述

实例流程图如下
在这里插入图片描述


今日学习时间:

计划学习的时间

1、 上午8:30~12:30
2、 下午2:30~5:30
3、 晚上6:30~9:30


今日学习产出:

统计学习计划的总量

1、 技术笔记 1遍
2、CSDN 技术博客 1篇
3、每日录音
4、课后作业
编写一个猜年龄的游戏
基本要求
如果不对的情况下可以猜三次 如果对了直接结束
拔高练习
三次机会用完之后提示用户是否继续猜测 如果用户输入了y
则再给用户三次机会 如果用户输入n则直接结束

import random
#产生一个0~20以内的随机整数
age = random.randint(0, 20)
count = 0
while True:
    if count < 3:
        guess = int(input(">>:"))
        if guess > age:
            print("猜的太大了,往小里试试...")
            count += 1
        elif guess < age:
            print("猜的太小了,往大里试试...")
            count += 1
        else:
            print("恭喜你,猜对了...")
            break
    else:
        a = input('您已经猜错了三次,是否继续猜测(y/n)>>:')
        if a == 'y':
            count = 0
        else:
            print('感谢您本次游玩,欢迎下次光临!')
            break
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值