流程控制

作用:控制事物的执行过程

# 任何使用执行流程只有三种情况
1.顺序结构
自上而下依次执行
2.分支结构
根据条件不同执行不同的程序流程
3.循环结构

必知必会

1.条件都会转换成布尔量,不是满足 就是不满足
2.缩进: 表示代码的从属关系
3.不是所有的代码都拥有子代码 eg:print()
4.同属于某个代码的多行子代码,必须保持相同的缩进量

分支结构 if

1.单 if 分支结构

# 单if分支结构
eg: age = 18
if age < 22:
print('小姐姐')

2. if与else连用

# if与else连用
age = 18
if age <= 18:
print('加个微信吧')
else:
print('再见')
'''两者代码只会执行一个'''

3. if, else和 elif

# if, else和 elif
if 条件1:
条件1成立之后执行的子代码块
elif 条件2:
条件1不成立 条件2成立之后执行的子代码块
elif 条件3:
条件1和2都不成立 条件3成立之后执行的子代码块
else:
上述条件都不成立 执行的子代码块

practising

# 大于90优秀 大于80良好 大于70一般 大于60及格 其他挂科
score = 66
if score >= 90:
print('你很优秀')
elif score >= 80:
print('你还不错,良好')
elif score >= 70:
print('一般般吧')
elif score >= 60:
print('no bad bad')
else:
print('回家种地吧')

if 判断之嵌套

# 判断小姐姐是否会给微信
age = 26
height = 165
weight = 99
is_beautiful = True
if age < 28 and height > 160 and weight < 90 :
print('可以加微信啦')
if is_beautiful:
print('可以约啦')
else:
print('算了吧')

if 练习题

# 1.编写一个用户登录功能  用户名是jason 密码是123
# 用户如果输入正确则打印来宾三位 否则登录失败
"""
1.先写思路 注释 流程
2.再动手写代码
"""
# 1.获取用户输入的用户名和密码
# username = input('username>>>:')
# password = input('password>>>:')
# # 2.判断用户名和密码是否正确
# if username == 'jason' and password == '123':
# print('来宾三位')
# else:
# print('去你妹的 没钱滚蛋') ________________________________________________________________ # 2.根据用户名的不同打印不同的用户身份
# jason管理员 tony安保人员 kevin财务 jack销售 其他普通员工
# 1.获取用户名
username = input('username>>>:')
# 2.判断用户名身份
if username == 'jason':
print('管理员')
elif username == 'tony':
print('安保')
elif username == 'kevin':
print('财务')
elif username == 'jack':
print('销售')
else:
print('普通员工')

while 循环

# 语法结果
"""
while 条件:
条件成立之后循环执行的子代码块
"""

while+break


# 用户名:'jason' 密码:123
while 1:
username = input('username>>>:')
password = input('password>>>:')
if username == 'jason' and password == '123':
print('密码输入正确,正在进入系统')
e = input('退出请按:2')
while e == '2':
break
break
else:
print('密码错误')

break本层的含义

# while嵌套
while True:
# 1.获取用户输入的用户名和密码
username = input('username>>>:')
password = input('password>>>:')
# 2.判断用户名和密码是否正确
if username == 'jason' and password == '123':
print('来宾三位')
while True:
cmd = input('请输入您的指令>>>:')
# 判断用户是否想退出
if cmd == 'q':
break
print('正在执行您的指令:%s' % cmd)
break
else:
print('去你妹的 没钱滚蛋')

全局标志位

# 标志位的使用
flag = True
while flag:
# 1.获取用户输入的用户名和密码
username = input('username>>>:')
password = input('password>>>:')
# 2.判断用户名和密码是否正确
if username == 'jason' and password == '123':
print('来宾三位')
while flag:
cmd = input('请输入您的指令>>>:')
# 判断用户是否想退出
if cmd == 'q':
flag = False
print('正在执行您的指令:%s' % cmd)
else:
print('去你妹的 没钱滚蛋')
————————————————————————————————————————————————————————————————————————————————————————————————
# 用户名:'jason' 密码:123
flag = 1
while flag:
username = input('username>>>:')
password = input('password>>>:')
if username == 'jason' and password == '123':
print('密码输入正确,正在进入系统')
while flag:
asd = input('输入数值:')
if asd == '2':
flag = 0
break
else:
print('密码错误')

作业

1.整理今日内容及博客
2.猜年龄的游戏
普通要求
用户可以有三次猜错的机会 如果过程中猜对了直接退出
count = 0
while count < 3:
age = input('猜猜年龄是多少:')
if age == '22':
count = 4
break
count += 1 ——————————————————————————————————————————————————————————————————————————————————————————————————
拔高要求
三次机会用完之后提示用户是否继续尝试 如果是则再给三次机会 如果否则直接结束 count = 0
flag = 0
while count < 3:
age = input('猜猜年龄是多少:')
age = int(age)
if age == 22:
print('猜对了!')
count = 4
else:
count +=1
print('可惜哟,猜错了')
if count ==3:
flag += 1
if flag == 2:
break
msg1 = input('是否继续:')
if msg1 == '是':
count = 0
if msg1 =='否':
print('sdd')
break 数据类型转换提示
age = input('age>>>:')
real_age = 18
# 将字符串的数字转换成整型
age = int(age)

while+continue

# 退出本层循环

count = 0
while count < 10:
if count == 7:
continue
print(count)
count += 1

while + else :

# 只有在while没有被主动打断的情况下,走完后,会走else
count = 0
while count < 10:
print('haha' )
count += 1
else:
print('nice')

while 死循环

while true:
print (1)

流程控制( if while )的更多相关文章

  1. 第10章 Shell编程(4)_流程控制

    5. 流程控制 5.1 if语句 (1)格式: 格式1 格式2 多分支if if [ 条件判断式 ];then #程序 else #程序 fi if [ 条件判断式 ] then #程序 else # ...

  2. Shell命令和流程控制

    Shell命令和流程控制 在shell脚本中可以使用三类命令: 1)Unix 命令: 虽然在shell脚本中可以使用任意的unix命令,但是还是由一些相对更常用的命令.这些命令通常是用来进行文件和文字 ...

  3. PHP基础知识之流程控制的替代语法

    PHP 提供了一些流程控制的替代语法,包括 if,while,for,foreach 和 switch. 替代语法的基本形式是把左花括号({)换成冒号(:),把右花括号(})分别换成 endif;,e ...

  4. Python黑帽编程2.4 流程控制

    Python黑帽编程2.4  流程控制 本节要介绍的是Python编程中和流程控制有关的关键字和相关内容. 2.4.1 if …..else 先上一段代码: #!/usr/bin/python # - ...

  5. 使用yield进行异步流程控制

    现状 目前我们对异步回调的解决方案有这么几种:回调,deferred/promise和事件触发.回调的方式自不必说,需要硬编码调用,而且有可能会出现复杂的嵌套关系,造成"回调黑洞" ...

  6. [Java入门笔记] Java语言基础(四):流程控制

    流程控制指的是在程序运行的过程中控制程序运行走向的方式.主要分为以下几种: 顺序结构 顺序结构,顾名思义,是指程序从上往下逐步顺序执行.中间没有任何的判断和跳转. 分支结构 Java提供两种分支结构: ...

  7. node基础13:异步流程控制

    1.流程控制 因为在node中大部分的api都是异步的,比如说读取文件,如果采用回调函数的形式,很容易造成地狱回调,代码非常不容易进行维护. 因此,为了解决这个问题,有大神写了async这个中间件.极 ...

  8. Shell入门教程:流程控制(1)命令的结束状态

    在Bash Shell中,流程控制命令有2大类:“条件”.“循环”.属于“条件”的有:if.case:属于“循环”的有:for.while.until:命令 select 既属于“条件”,也属于“循环 ...

  9. Oracle中PL/SQL的执行部分和各种流程控制

    Oracle中PL/SQL的执行部分和异常部分 一.PL/SQL的执行部分. 赋值语句. 赋值语句分两种,一种是定义一个变量,然后接收用户的IO赋值:另一种是通过SQL查询结果赋值. 用户赋值举例: ...

  10. swift_简单值 | 元祖 | 流程控制 | 字符串 | 集合

    //: Playground - noun: a place where people can play import Cocoa var str = "Hello, playground& ...

随机推荐

  1. 关于 this.$route.meta.operations.includes('delete') 取不到值的问题

    原因是:src/mock/api/sys.login.js中定义的路径 要与src/router/modules/下定义的路由要一致 作用this.$route.matched可以查看匹配信息 来自为 ...

  2. python安装第三方库的步骤

    windows下举例:1.下载openpyxl,http://pypi.doubanio.com/simple/openpyxl/2.将下载后的文件解压放到Python文件夹下的Lib文件夹下3.cm ...

  3. Centos7 selinux关闭

    getenforce ---查看selinux服务是否开启 setenforce 0|1 0:Permissive 1:Enforcing 上面使用setenforce是临时的效果 永久关闭方法: v ...

  4. CentOS6.5-Hadoop2.7.3安装hive-2.1.1

    注:图片如果损坏,点击文章链接:https://www.toutiao.com/i6627723801960382979/ 系统版本,Hadoop已安装完成 Mysql安装完成 准备的解压包 安装zi ...

  5. vscode 前端好用插件汇总

    本篇文章根据实际开发中使用的扩展插件,结合<精选!15 个必备的 VSCode 插件(前端类)>.<vscode 插件推荐 - 献给所有前端工程师(2017.8.18更新)>中 ...

  6. JAVA自定义连接池原理设计(一)

    一,概述 本人认为在开发过程中,需要挑战更高的阶段和更优的代码,虽然在真正开发工作中,代码质量和按时交付项目功能相比总是无足轻重.但是个人认为开发是一条任重而道远的路.现在本人在网上找到一个自定义连接 ...

  7. Centos7安装erlang以及RabbitMQ Centos启动rabbitmq

    本文使用版本:  rabbitmq-server-3.8.3-1.el7.noarch.rpm   Centos7  erlang  22.3.1 在线安装 yum install esl-erlan ...

  8. 【记录一个问题】用毫无用处的方法解决了libtask的asm.S在ndk下编译的问题

    昨天提到,libtask中的asm.S使用的是ARM 32位的语法,因此在ARM 64下无法编译通过. 于是查了一下资料,改写了一下汇编代码,使得可以在64位下编译通过.源码如下 #if define ...

  9. (3)puppet清单定义资源的语法

    1.先看两个例子: a.创建一个文件 file{"/tmp/12567.txt": content => aaaaababbau, ensure => present ...

  10. Spring中的单例模式

    Spring中的单例模式 单例模式的介绍 1.1 简介 ​ 保证整个应用中某个实例有且只有一个 1.2作用 保证一个类仅有一个实例,并且提供一个访问它的全局访问点. 单例模式的优点和缺点 单例模式的优 ...