学习三连鞭...

  什么是循环?

  为什么要有循环?

  如何用循环?

循环的基本语法: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 的故事的更多相关文章

  1. PHP06 流程控制

    学习要点 选择结构 循环结构 学习目标 掌握PHP的选择结构 掌握PHP的循环结构 流程控制概述 程序 程序:一系列计算机指令的集合. 编程语言:开发程序的工具. 程序执行结构 计算机程序有三种基本执 ...

  2. 051 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 13 Eclipse下程序调试——debug入门1

    051 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 13 Eclipse下程序调试--debug入门1 本文知识点: 程序调试--debug入门1 程序 ...

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

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

  4. Shell命令和流程控制

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

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

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

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

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

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

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

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

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

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

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

随机推荐

  1. 1、Go语言介绍

    一 Go语言介绍 Go 即Golang,是Google公司2009年11月正式对外公开的一门编程语言. Go是静态强类型语言,是区别于解析型语言的编译型语言. 解析型语言--源代码是先翻译为中间代码, ...

  2. Java中CLASS_PATH与注释的使用

    一.CLASS_PATH的使用 我们在安装jdk的时候,通常情况下只是在电脑的环境变量中新建一个系统变量JAVA_HOME,这个变量用于储存jdk的/bin文件夹之前路径,然后在path中使用这个系统 ...

  3. 15.java设计模式之访问者模式

    基本需求: 电脑需要键盘鼠标等固定的组件组成 现在分为个人,组织等去买电脑,而同一种组件对不同的人(访问者)做出不同的折扣,从而电脑的价格也不一样 传统的解决方法:在组件内部进行判断访问人的类型,从而 ...

  4. try...catch的前世今生

    1975年, John Goodenough发表论文,提出异常处理的建议: 一是明确声明命令可能抛出何种异常: 二是需要有将可能出错的操作括起来的语句结构. Communications of the ...

  5. MySQL必知必会:简介undo log、truncate、以及undo log如何帮你回滚事物

    目录 一.前言 二.undo log表空间 三.关于undo log默认的配置 四.如何将undo log放到单独的表空间 文章公众号首发,持续更新中 五.rollback segment 六.什么是 ...

  6. kafka 消费组功能验证以及消费者数据重复数据丢失问题说明 3

    原创声明:作者:Arnold.zhao 博客园地址:https://www.cnblogs.com/zh94 背景 上一篇文章记录了kafka的副本机制和容错功能的说明,本篇则主要在上一篇文章的基础上 ...

  7. 「懒惰的美德」我用 python 写了个自动生成给文档生成索引的脚本

    我用 python 写了一个自动生成索引的脚本 简介:为了刷算法题,建了一个 GitHub仓库:PiperLiu / ACMOI_Journey,记录自己的刷题轨迹,并总结一下方法.心得.想到一个需求 ...

  8. cf div2 round 688 题解

    爆零了,自闭了 小张做项目入职字节 小李ak wf入职ms 我比赛爆零月薪3k 我们都有光明的前途 好吧,这场感觉有一点难了,昨天差点卡死在B上,要不受O爷出手相救我就boom zero了 第一题,看 ...

  9. cookie倒计时

    使用cookie倒计时60s Vue实例创建一个变量time=0 生命周期一般是created,给time赋值一个cookie的键值-当前的时间(因为刚进入页面这时是没有cookie的,所以time变 ...

  10. moviepy音视频剪辑:视频半自动追踪人脸打马赛克

    一.引言 在<moviepy1.03音视频剪辑:使用manual_tracking和headblur实现追踪人脸打马赛克>介绍了使用手动跟踪跟踪人脸移动轨迹和使用headblur对人脸进行 ...