for和 while循环

  当你知道循环次数的话就用for循环,

  不知道的时候用while循环,while必须要有结束条件

  a +=1  等于 a =a+1

for i in  xxx:

i:是一个变量,是把xxx里面的某一个值取出来存到i里面

xxx:可以是序列(序列包括:列表、元祖、字符串)

  还可以是可迭代对象

>>> a = "abc"
>>> for i in a:
...     print(i)
...
a
b
c
>>> a = 0
>>> while a<=5:
...     print(a)
...    
a+=1
...
0
1
2
3
4
5
>>>

#调试技巧 例题 打印出每一步的结果

>>> result =0
>>> for i in [1,2,3,4]:
...     print("i的取值",i)
...     result+=i
...    
print("计算结果",result)
...
i的取值 1
计算结果 1
i的取值 2
计算结果 3
i的取值 3
计算结果 6
i的取值 4
计算结果 10
>>> print(result)
10
>>>

例:

题目:[1,2,3,4,5,7]你输入一个数字,判断一下是否在这个list中,执行3次这个逻辑。

算法:

1、循环3次 (for)

for i in range(3)

2、输入一个数字(input),存到某个变量里

user_num
=int(input("请输入一个数字:"))

3、判断这个数字在不在[1,2,3,4,5,7]

desc_list =[1,2,3,4,5,7]

4、如果在,打印一下;不再也打印一下。

if user_num in desc_list:

  print("%s 在" %user_num)

else:

  print("%s 不在" %user_num )

实现:

>>> desc_list
=[1,2,3,4,5,7]
>>> for i in range(3):
...     user_num =int(input("请输入一个数字:"))
...     if user_num in desc_list:
...         print("%s 在" %user_num)#模板字符串表达方式 "%s a
number" %1   '1 a number'
...     else:
...         print("%s 不在" %user_num)
...
请输入一个数字:5
5 在
请输入一个数字:2
2 在
请输入一个数字:1
1 在
>>>

break:彻底结束循环
continue:跳出本次循环,执行下一次
>>> for i in range(10):
...     if i==3:
...      
  break
...
>>>
for i in range(10):
...     if i==3:
...         break
...    
print(i)
...
0
1
2
>>> for i in range(10):
...     if i==3:
...      
  continue
...     print(i)
...
0
1
2
4
5
6
7
8
9
>>>
 
 
 

while 条件:只要条件是True
代码块会永远执行

死循环应用场景:

1 服务器端:一般死循环

2 你也不知道循环多少次的时候就要用到死循环

练习题:

死循环:

  用户输入数字,判断是奇数还是偶数

  当输入的数字是100的时候,结束第循环

>>> while 1:
...     user_num =int(input("请输入一个数字:"))
...     if user_num%2==0:
...         print("%s 是偶数" %user_num)
...     else:
...        
print("%s 是奇数" %user_num)
...     if
user_num==100:
...         break
...
请输入一个数字:2
2 是偶数
请输入一个数字:3
3 是奇数
请输入一个数字:4
4 是偶数
请输入一个数字:5
5 是奇数
请输入一个数字:6
6 是偶数
请输入一个数字:100
100 是偶数
>>>

练习题:

输入三种字母:e、a、r

如果等于e,那么退出循环

如果输入a,执行continue

如果输入r,那么在读取一次字母,并打印

用死循环实现

>>> while 1:
...     date = input("输入一个字母:")
...     if date == 'r':
...         date = input("输入一个字母:")
...     if date == 'a':
...         continue
...  
  if date == 'e':
...         break
...
输入一个字母:d
输入一个字母:d
输入一个字母:f
输入一个字母:g
输入一个字母:h
输入一个字母:r
输入一个字母:a
输入一个字母:g
输入一个字母:e

if...elif...else...

if可以单独存在,elif和else不可以单独存在会报错

>>> if len(str)==9:
...     print("等于9")
... elif len(str)<9:
...     print("小与9")
... elif len(str)>9:
...     print("大于9")
... else:
...     print("其他")
...
等于9
>>>

for 和while循环 if else的更多相关文章

  1. 【.net 深呼吸】细说CodeDom(8):分支与循环

    有人会问,为啥 CodeDom 不会生成 switch 语句,为啥没生成 while 语句之类.要注意,CodeDom只关心代码逻辑,而不是语法,语法是给写代码的人用的.如果用.net的“反编译”工具 ...

  2. Recurrent Neural Network系列1--RNN(循环神经网络)概述

    作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 本文翻译自 RECURRENT NEURAL NETWORKS T ...

  3. Python学习--04条件控制与循环结构

    Python学习--04条件控制与循环结构 条件控制 在Python程序中,用if语句实现条件控制. 语法格式: if <条件判断1>: <执行1> elif <条件判断 ...

  4. 模仿Linux内核kfifo实现的循环缓存

    想实现个循环缓冲区(Circular Buffer),搜了些资料多数是基于循环队列的实现方式.使用一个变量存放缓冲区中的数据长度或者空出来一个空间来判断缓冲区是否满了.偶然间看到分析Linux内核的循 ...

  5. 【JS基础】循环

    for 循环的语法: for (语句 1; 语句 2; 语句 3) { 被执行的代码块 } 语句 1 在循环(代码块)开始前执行 语句 2 定义运行循环(代码块)的条件 语句 3 在循环(代码块)已被 ...

  6. 【python之路4】循环语句之while

    1.while 循环语句 #!/usr/bin/env python # -*- coding:utf-8 -*- import time bol = True while bol: print '1 ...

  7. To Java程序员:切勿用普通for循环遍历LinkedList

    ArrayList与LinkedList的普通for循环遍历 对于大部分Java程序员朋友们来说,可能平时使用得最多的List就是ArrayList,对于ArrayList的遍历,一般用如下写法: p ...

  8. JavaScript单线程和浏览器事件循环简述

    JavaScript单线程 在上篇博客<Promise的前世今生和妙用技巧>的开篇中,我们曾简述了JavaScript的单线程机制和浏览器的事件模型.应很多网友的回复,在这篇文章中将继续展 ...

  9. .NET基础 一步步 一幕幕[循环、逻辑语句块]

    循环.逻辑语句块   好久不写博客了,断更了好几天了,从上周五到今天,从北京到上海,跨越了1213.0公里,从一个熟悉的城市到陌生的城市,还好本人适应力比较好,还有感谢小伙伴的接风咯,一切都不是事,好 ...

  10. Linux进程管理及while循环

    目录 进程的相关概念 进程查看及管理工具的使用 Linux系统作业控制 调整进程优先级 网络客户端工具 bash之while循环 20.1.进程类型 守护进程 daemon,在系统引导过程中启动的进程 ...

随机推荐

  1. XSS学习(一)

    XSS(一) XSS分类 1.反射型XSS 2.持久性XSS 3.DOM型XSS **** 反射型XSS 也称作非持久型,参数型跨站脚本 主要将Payload附加到URL地址参数中 例如: http: ...

  2. java的接口

    接口(英文:Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明.一个类通过继承接口的方式,从而来继承接口的抽象方法. 接口并不是类,编写接口 ...

  3. C# - 匿名对象属性的赋值与取值

    在new出匿名对象的函数内可以直接调用该匿名对象的属性取值. 可是在其它函数就无法调用匿名对象的属性或方法. 这时,我们可以通过c#的反射机制取值: 文章出处:https://www.cnblogs. ...

  4. idea调试代码跟踪到tomcat代码里面

    在POM.xml文件里面加上如下代码即可: <dependency> <groupId>org.apache.tomcat</groupId> <artifa ...

  5. DateTime?,也是一种类型,代表DateTime或NULL两种类型,在处理空时间时比较有用

    public static DateTime? GetDateTimeFromStr(string date) { if (date.Trim() == string.Empty) return nu ...

  6. oc 语法基础

    1:https://mp.weixin.qq.com/s/IqICB4aW2vZdU0382S9sTA  <1-7高质量OC代码> 2:https://blog.csdn.net/qq_3 ...

  7. 执行代码出现ImportError:attempted relative import with no known parent package

    前言 在这篇文章中,我将会解析 ImportError: attempted relative import with no known parent package 这个异常的原因.当你在运行的py ...

  8. install chrome and chrome driver on ubuntu

    sudo apt install python-minimal # python 2.7.xsudo apt install python-pip # https://www.ubuntuupdate ...

  9. window7 修改docker安装的machine 位置

    win7下安装docker ,默认的machine location 是在C:\users\xx\.docker\machine\machines 下面,为了不占用系统盘,想修改盘符位置 google ...

  10. 忘记秘密利用python模拟登录暴力破解秘密

    忘记秘密利用python模拟登录暴力破解秘密: #encoding=utf-8 import itertools import string import requests def gen_pwd_f ...