流程控制之☞ while 和 for 的故事
学习三连鞭...
什么是循环?
为什么要有循环?
如何用循环?
循环的基本语法:while 和 for
先来看while循环:
while条件:首先得是个循环体。
1、如果条件为真,那么循环体则执行,执行完毕后再次循环,重新判断条件。
2、如果条件为假,那么循环体不执行,循环终止。
一、while循环的基本用法:
1、 i = 0
tag = True
while tag:
if i == 5:
tag = False
print(i) #>>>>>>>>>>0 1 2 3 4 5
i += 1
2、 i = 0
while i < 6:
print(i) #>>>>和上面1 输出相同
i +=1
二、死循环:条件永远为真
while True:
x = input('>>>>')
y = input('>>>>')
x + y
三、结束while循环的两种方式
方式一:把条件改为False
特点:等到本次循环代码运行完毕后,下一次循环条件判断时会生效
例:
i = 0
tag = True
while tag:
if i == 5:
tag = False
print(i) #>>>>0 1 2 3 4 5
i += 1
方式二:break代表结束本层循环
特点:立即干掉本层while循环
i =0
while True:
if i == 5:
break
print(i) #>>>>> 0 1 2 3 4 注意看和上面输出结果区别
i += 1
三:嵌套多层的while循环
方式一:
tag = True
while tag:
while tag:
while tag:
tag = False # 程序全部终止,因为条件tag全变成了False
方式二:
while True:
while True:
whileTrue:
break
break
break # 每一个break 结束对应的while
案例应用一:
tag = True
whlle tag:
inp_name = input('account>>>:')
inp_pwd = input('pwd>>>>:')
if inp_name == 'liu' and inp_pwd == '123':
print('successful user login...')
tag = False
else:
print('user_name or user_pwd error')
print('>>>>>>>>>>>>>‘) # 此段正常输出
案例二:
while True:
inp_name = input('name>>>>:')
inp_pwd = imput('pwd>>>>>:')
if inp_name=='liu' and inp_pwd == '123':
print('login successful...')
while True:
print("""
0 退出
1 取款
2 存款
3 转账
”“”)
choice = input('please your order:’)
if choice == ‘0’
break
elif choice == ‘1’:
print(“正在取款‘)
elif choice == ‘2’:
print(“正在存款‘)
elif choice == ‘3’:
print(“正在转账‘) # 此处略繁琐,后面可用字典对其简化
else:
print(’输入的指令不存在‘)
break
else:
print(’name or pwd error‘)
五 while + continue:结束本次循环 进入下一次循环
count = 0
while count < 6:
if count == 2 or count ==4:
count += 1
countinue # continue 之后的同级是不会运行的 所以别在同级写代码,不然会被笑话滴
print(count) # count = 2 或者 4 的时候循环结束 运行不到print 回到了本次开始
count += 1 >>>>>>>>>>>>> 0 1 3 5
案例:
while True:
inp_name = input('name>>>>:')
inp_pwd = input('pwd>>>>:')
if inp_name == 'liu' and inp_pwd == '123':
print('login successful...')
break
else:
print('账户或密码错误’)
# 强调 continue 不能加在代码的最后一步
六: while + else:else 的子代码快会在while正常循环死亡,不是被break打断的情况下运行
count = 0
while count < 5:
if count ==2:
break # 输出结果为 0 1 else 代码不会运行
# count += 1
# countinue 输出为 0 1 3 4 >>>>>>>>>>> while 运行完毕所以else代码会正常运行
print(count)
count += 1
else:
print('>>>>>>>")

For 循环来了!!!!
循环结构的第二种实现方式是for循环,for循环可以做的事情while都可以实现,之所以用for循环是因为循环取值(遍历) 的时候
for循环比较简洁方便
比如:
msgs = [ '1','2','3','4']
i = 0
while i < len(msgs):
print(msgs[i])
i+=1 >>>>>> 1 2 3 4
msgs = [ '1','2','3','4']
for i in msgs:
print(i) >>>>>>1 2 3 4 可以看出。for 在遍历取值要比 while 简洁 的多
for 的基本用法:
dic = {'k1":111,"k2":222,"k3":333}
for x in dic:
print(x,dic[x]) # 懂吧???不懂去敲一遍
for x in 'hello':
print(x)
for x,y in [['name','liu'],['age',17],['gender','male,]]
print(x,y)
二:for 和 break:
for i in [11,22,33,44,55]:
if i == 33:
break
print(i) #>>>>>>11 22
三、for 和 continue:
for i in [11,22,33,44,55]:
if i ==33:
continue
print(i) >>>>> 11 22 44 55
四、for 和else:
for i in [11,22,33,44,55]
if i ==33:
break
print(i)
else:
print("¥¥¥¥¥¥¥¥”) >>>>>>>>> 11 22
五,range(和for一起用。。。)
for x in range(3)
print(111)
print(222)
print(333)
>>>>>>>>>>>> 111 222 333 111 222 333 111 222 333 循环次数等于range()
流程控制之☞ while 和 for 的故事的更多相关文章
- PHP06 流程控制
学习要点 选择结构 循环结构 学习目标 掌握PHP的选择结构 掌握PHP的循环结构 流程控制概述 程序 程序:一系列计算机指令的集合. 编程语言:开发程序的工具. 程序执行结构 计算机程序有三种基本执 ...
- 051 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 13 Eclipse下程序调试——debug入门1
051 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 13 Eclipse下程序调试--debug入门1 本文知识点: 程序调试--debug入门1 程序 ...
- 第10章 Shell编程(4)_流程控制
5. 流程控制 5.1 if语句 (1)格式: 格式1 格式2 多分支if if [ 条件判断式 ];then #程序 else #程序 fi if [ 条件判断式 ] then #程序 else # ...
- Shell命令和流程控制
Shell命令和流程控制 在shell脚本中可以使用三类命令: 1)Unix 命令: 虽然在shell脚本中可以使用任意的unix命令,但是还是由一些相对更常用的命令.这些命令通常是用来进行文件和文字 ...
- PHP基础知识之流程控制的替代语法
PHP 提供了一些流程控制的替代语法,包括 if,while,for,foreach 和 switch. 替代语法的基本形式是把左花括号({)换成冒号(:),把右花括号(})分别换成 endif;,e ...
- Python黑帽编程2.4 流程控制
Python黑帽编程2.4 流程控制 本节要介绍的是Python编程中和流程控制有关的关键字和相关内容. 2.4.1 if …..else 先上一段代码: #!/usr/bin/python # - ...
- 使用yield进行异步流程控制
现状 目前我们对异步回调的解决方案有这么几种:回调,deferred/promise和事件触发.回调的方式自不必说,需要硬编码调用,而且有可能会出现复杂的嵌套关系,造成"回调黑洞" ...
- [Java入门笔记] Java语言基础(四):流程控制
流程控制指的是在程序运行的过程中控制程序运行走向的方式.主要分为以下几种: 顺序结构 顺序结构,顾名思义,是指程序从上往下逐步顺序执行.中间没有任何的判断和跳转. 分支结构 Java提供两种分支结构: ...
- node基础13:异步流程控制
1.流程控制 因为在node中大部分的api都是异步的,比如说读取文件,如果采用回调函数的形式,很容易造成地狱回调,代码非常不容易进行维护. 因此,为了解决这个问题,有大神写了async这个中间件.极 ...
随机推荐
- JS 数组对象
定义数组: 数组对象用来在单独的变量名中存储一系列的值. 创建一个数组有三种方法. 1: 常规方式: var myCars=new Array(); myCars[0]="Saab" ...
- 【HAOI2015】树上操作
(题面来自洛谷) 题目描述 有一棵点数为 N 的树,以点 1 为根,且树点有边权.然后有 M 个操作,分为三种: 操作 1 :把某个节点 x 的点权增加 a . 操作 2 :把某个节点 x 为根的子树 ...
- 【P1972】HH的项链——树状数组+询问离线
(题面摘自luogu) 题目背景 无 题目描述 HH 有一串由各种漂亮的贝壳组成的项链.HH 相信不同的贝壳会带来好运,所以每次散步完后,他都会随意取出一段贝壳,思考它们所表达的含义.HH 不断地收集 ...
- HDU 4920 Matrix multiplication 题解(内存访问连续性/卡常)
题目链接 题目大意 多组输入,给你两个n×n的矩阵,要你求他们相乘%3的值 题目思路 这个题目主要是要了解内存访问连续化,要尽量每次访问连续的内存 所以第一种方法会超时,第二种则AC.一种卡常技巧 代 ...
- idea2020安装破解教程
申明:本教程 IntelliJ IDEA 破解补丁.激活码均收集于网络,请勿商用,仅供个人学习使用 不花钱 的方式 IDEA 2020.2 激活到 2089 年 idea官网下载安装包:https:/ ...
- 《Machine Learning in Action》—— 白话贝叶斯,“恰瓜群众”应该恰好瓜还是恰坏瓜
<Machine Learning in Action>-- 白话贝叶斯,"恰瓜群众"应该恰好瓜还是恰坏瓜 概率论,可以说是在机器学习当中扮演了一个非常重要的角色了.T ...
- Python机器学习笔记:异常点检测算法——LOF(Local Outiler Factor)
完整代码及其数据,请移步小编的GitHub 传送门:请点击我 如果点击有误:https://github.com/LeBron-Jian/MachineLearningNote 在数据挖掘方面,经常需 ...
- 【GDKOI2014】JZOJ2020年8月13日提高组T4 内存分配
[GDKOI2014]JZOJ2020年8月13日提高组T4 内存分配 题目 Description Input Output 输出m行,每行一个整数,代表输入中每次程序变化后系统所需要的空闲内存单位 ...
- Spring Cloud 学习 (四) Hystrix & Hystrix Dashboard & Turbine
在复杂的分布式系统中,可能有几十个服务相互依赖,这些服务由于某些原因,例如机房的不可靠性.网络服务商的不可靠性等,导致某个服务不可用 . 如果系统不隔离该不可用的服务,可能会导致整个系统不可用.Hys ...
- 本地eclipse java api连接远程虚拟机HBase
1.本地与远程连通 无论是域名或者ip都可以,另外需保证HBase在虚拟机集群上正常运行. 2.本地要有一个跟远程相同的hadoop环境 当然不相同,只要兼容也可以,现采用hadoop-2.5.0-c ...