一.for 循环

#循环 变量 迭代 都是一个意思
#把列表里面的元素意义的拿出来就是遍历
listvar = ["one","two","three","four","five","six"]
#用len获取列表的长度
res = len(listvar)
print(res)

1.通过while 的遍历来介绍for

例:
i = 0
while i < len(listvar):
#  "0 1 2 3 4 5"
   res = listvar
   print(res)
   i+=1

setvar = ["one","two","three","four","five","six"]
#while 循环有它的局限性,不能够变量集合这样的数据类型
#所以for循环应用而生 特指用来遍历的

'''
i = 0
while i < len(setvar):
   res = setvar[i]
   print(res)
   i+=1

'''

2.for 语法

代码解析:
把容器类型数据里面的每一个元素,后期我们还学迭代器 生成器 range对象
for 变量 in 可迭代的对象:
   print(变量)
代码解析:
把容器类型数据类目的每一个元素,依次的拿出来赋值变量i
知道所有数据依次遍历完毕退出循环

#遍历列表
container = ["one","two","three","four","five","six"]
#遍历元组
container =("one","two","three","four","five","six")
#遍历集合
container = {"one","two","three","four","five","six"}
#遍历字典
container ={'top':'剑圣','middle':'狐狸','bottom':'德莱文'}
#变量字符串
container = "我爱你亲爱的菇凉,见到你我就心慌"
for i in container:
   print(i)

3.使用for遍历等长的二级容器

listvar = [("王林","王思思","王美丽"),["马云","马花","马思"],["王宝","马宝","宋小宝"] ]
#变量的解包
a,b = 1,2
print(a,b)
a,b =[3,4]
print(a,b)
a,b = {5,6}
print(a,b)
print("7777777777777777777777777777")

for a,b,c in listvar:
   """
   a,b,c ("王林","王思思","王美丽")
   a,b,c ["马云","马花","马思"]
   a,b,c ["王宝","马宝","宋小宝"]
   """
print(a,b,c)
listvar = [(1,2),[3,4],[5,6]]
for a,b in listvar:
   print(a,b)

4.使用for遍历不等长的二级容器

listvar = [("王林","王思思"),["马花","马美丽"],["王宝","宋小宝"] ]
for i in listvar:
   for j in i :
      print(j)

5.range对象

#语法:
range(start,end,step)
   start : 开始值
   end :结束值
   step:步长
使用方式和切片语法类似,高位end那个值取不到,取到end之前的那个值

#1个参数的情况 range(5) => 0 1 2 3 4 默认0开始 高位5取不到,最大取到4
print(range(5),type(res))

res = list(range(5))
print(res)

for i in range(5):
   print(i)

#2个参数的情况
for i in range(3,10):
   print(i)

#(33个参数的情况 2 4 6 8 10
#正序
for i in range(2,11,2):
   print(i)

#倒序
#打印9~1 9 8 7 6 5 4 3 2 1
for i in range(9,0,-1):
   print(i)

二.关键字:break pass continue

1.pass 过 作用:做占位符使用

if 5 == 5:
   pass

i = 0
while i < 10:
   pass #约定俗成,在循环里面什么也不行的情况下,给予友好提示
   i+=1

2.break 终止当前循环

(只能用于循环当中)
'''打印1~10,如果遇到5终止循环'''
i=1
while i <=10:
   if i == 5:
      break
   print(i)
   i+=1

#break 终止当前循环,外面循环一次,里面循环三次,只不过当j=3的时候,循环终止了
i = 1
while i<=3:
   j = 1
   while j<=3:
      if j == 3:
         break
      print(i,j)
      j+=1
   i+=1

#1,1 1,2 2,1 2,2 3,1 3,2

3.continue 跳过当前循环,从下一次循环开始

例:

#打印1~10 不打印5
i = 1
while i <= 10:
   if i == 5:
      i +=1 #要小心跳过循环之后,后面的代码不执行,从循环开始在执行
      continue
   print(i,end=" ") #让它打印一行并且空格
   i+=1

例:
#打印1~100 所有不含4的数字

#解析:
98 如果取出98的各位数和十位数
8 => 98 % 10 => 8
9 =>98 // 10 => 9

通过地板除 // 可以获得一个数的高位
通过取余 % 可以获取一个数的低位

#第一个方法
i = 1
while i<100:
   if i // 10 == 4 or i % 10 == 4:
      i += 1
      continue
   print(i)
   i+=1

#第二个方法
i=1
while i <= 100:
   num = str(i)
   if '4' in num:
      i+=1
      continue
   print(i)
   i+=1

Python 基础之循环结构for及break pass continue的更多相关文章

  1. 第五篇:python基础之循环结构以及列表

    python基础之循环结构以及列表   python基础之编译器选择,循环结构,列表 本节内容 python IDE的选择 字符串的格式化输出 数据类型 循环结构 列表 简单购物车的编写 1.pyth ...

  2. python基础之循环结构以及列表

    python基础之编译器选择,循环结构,列表 本节内容 python IDE的选择 字符串的格式化输出 数据类型 循环结构 列表 简单购物车的编写 1.python IDE的选择 IDE的全称叫做集成 ...

  3. python之while循环用法举例,break与continue的区别,格式化输出及运算符

    一.while循环的基本结构 while 条件: 代码块(循环体) else: 当上面的条件为假. 才会执行 执行顺序:判断条件是否为真. 如果真. 执行循环体. 然后再次判断条件....直到循环条件 ...

  4. Python 基础之循环结构 while

    一.while循环介绍 while 循环 可以提高代码的效率,减少代码的冗余 while 条件表达式:    code1    code2如果条件表达式成立,返回Ture,就执行其中的代码块 1.基本 ...

  5. python分支和循环结构

    本文收录在Python从入门到精通系列文章系列 1. 分支结构 1.1 应用场景 迄今为止,我们写的Python代码都是一条一条语句顺序执行,这种代码结构通常称之为顺序结构.然而仅有顺序结构并不能解决 ...

  6. Python 基础 while 循环

    Python 基础 while 循环 while 循环 在生活中,我们遇到过循环的事情吧?比如循环听歌.在程序中,也是存才的,这就是流程控制语句 while 基本循环 while 条件: # 循环体 ...

  7. 基础语法-循环结构for

    基础语法-循环结构for 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.for循环格式 for(初始化表达式;循环条件表达式;循环后的操作表达式){ 执行语句(循环体); } ...

  8. 基础语法-循环结构do...while

    基础语法-循环结构do...while 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.do...while语句格式 do{ 执行语句; }while(条件表达式); 温馨提示: ...

  9. 基础语法-循环结构while

    基础语法-循环结构while 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.while语句格式 while(条件表达式){ 执行语句; } 二.while语句案例 /** * ...

随机推荐

  1. ES6-对象的简写方式

        var name = 'tom';     var age = 11;     //es5定义对象     var obj = {         name:name,         age ...

  2. AMD R7 2700X 安装虚拟机

    自己组装的台式机,选用的是微星X470主板,该主板默认的虚拟化技术是关闭的,在bios中也不太容易找到,具体方法如下. [开机或重启]--[按住DEL进入BIOS]--[高级模式F7]--[选择OC] ...

  3. 无法打开物理文件 XXX.mdf",操作系统错误 5.5(拒绝访问) 的解决办法

    用T-SQL命令附加数据库时,出现如下异常信息: 无法打开物理文件 XXX.mdf".操作系统错误 5:"5(拒绝访问.)". (Microsoft SQL Server ...

  4. jq 常用语句

    //jq post 请求 $.post("demo_ajax_gethint.asp",{suggest:txt},function(result){ }); // jq get ...

  5. 喵星之旅-狂奔的兔子-基于docker的redis分布式集群

    一.docker安装(略) 二.下载redis安装包(redis-4.0.8.tar.gz) 以任何方式获取都可以.自行官网下载. 三.拉取centos7的docker镜像 命令:docker pul ...

  6. 服务器(1)——IIS(1)——Windows7中IIS简单安装与配置(详细图解)

    最近工作需要IIS,自己的电脑又是Windows7系统,找了下安装的方法,已经安装成功. 一.首先是安装IIS.打开控制面板,找到“程序与功能”,点进去 二.点击左侧“打开或关闭Windows功能” ...

  7. 树莓派Ubuntu Mate 16.04 修改为国内更新源

    收藏:https://blog.csdn.net/wang_shuai_ww/article/details/80386708 更换步骤以root身份打开 /etc/apt/sources.list ...

  8. java中关于类和对象的一些思考

    就这个问题而言 第一种和第二种定义的变量并不是一种形式 前者我们称为原始数据变量 后者我们称为对象变量 这两种变量的创建方式,定义方式,使用方式都有着很多不同 需要引起注意. 在java中,有着基本的 ...

  9. 【PAT甲级】1061 Dating (20 分)

    题意: 给出四组字符串,前两串中第一个位置相同且大小相等的大写字母(A~G)代表了周几,前两串中第二个位置相同且大小相等的大写字母或者数字(0~9,A~N)代表了几点,后两串中第一个位置相同且大小相等 ...

  10. cmd设置utf8编码

    在中文windows系统中,如果一个文本文件是utf-8编码的,那么在cmd.exe命令行窗口(所谓的dos窗口)中不能正确显示文件中的内容.在默认情况下,命令行窗口中使用的代码页是中文或者美国的,即 ...