python初体验-循环

一、while 循环

while 循环 的语义是当满足某条件时,就一直做某事,我们来看一下图解:

i = 0
while i < 3:
  print(i)
  i = i + 1

while 循环由 循环条件循环体 两部分组成。循环条件是个布尔值,每次循环都会进行判断,当满足循环条件时(值为 True) 执行循环,否则结束循环。循环体内则是那些需要重复的操作。

二、for 循环

除了 while 循环 外,Python 中还有一种更常用的循环——for 循环。

while 循环 相比,for 循环 同样有循环体和缩进。不同的是,for 循环 没有循环条件,而是通过 for ... in ... 的语法进行循环。循环的次数是 in 后面可循环序列的元素个数,每次循环,i 的值依次为可循环序列中元素的值,所以 i 的值依次为 0、1、2。

这里的变量名为 i 是因为 i 是常用名,就像数学中常用 xy 作为未知数一样,其实随便取什么变量名都可以。

for 循环 的特性——依次遍历循环序列中的元素([0, 1, 2]),并依次赋值给变量(i),最后执行统一的处理(print(i + 1))。

Tips:遍历 在计算机中指沿着某条路线,依次对序列中每个元素均做一次且仅做一次访问。

 三、循环序列字符串、列表、元组等都属于 循环序列。我们来看几个例子对比一下:
for i in [‘扇‘, ‘贝‘, ‘编‘, ‘程‘]:
  print(i)
# 逐行输出:扇 贝 编 程

for i in (‘扇‘, ‘贝‘, ‘编‘, ‘程‘):
  print(i)
# 逐行输出:扇 贝 编 程

# 字符串是一堆字符的序列,也属于循环序列
for i in ‘扇贝编程‘:
  print(i)
# 逐行输出:扇 贝 编 程

# 整数不是循环序列
for i in 123:
  print(i)
# 报错:TypeError: ‘int‘ object is not iterable

四、列表生成式列表生成式 是 Python 中用来快速生成想要的列表的一种简便方式。同样的功能,使用列表生成式只需要一行代码:
y = [x * x for x in range(1, 11)]

列表生成式 时,把要生成的元素 x * x(这个表达式可以自定义)放到前面,后面加一个 for 循环,就可以快速生成我们期望的列表,十分简便。

我们甚至还可以在 for ... in … 后加上条件判断:

# 筛选出奇数的平方
y = [x * x for x in range(1, 11) if x % 2 == 1]
# 输出:[1, 9, 25, 49, 81]

五、break 语句

break 语句用于结束循环,常和条件判断一起使用,在特定条件下结束循环。

while 循环for 循环 里分别这样写:

# while 循环
i = 0
while i < 5:
  i = i + 1
  if i == 3:
    break  # 注意此处有缩进
  print(i)
print(‘循环结束‘)
# 逐行输出:1 2 循环结束

# for 循环
for i in range(5):
  i = i + 1
  if i == 3:
    break  # 注意此处有缩进
  print(i)
print(‘循环结束‘)
# 逐行输出:1 2 循环结束
 六、continue 语句

continue 语句用于跳过当前循环,常和条件判断一起使用,在特定情况下跳过当前循环体中的剩余语句,继续进行下一轮循环。

while 循环for 循环 里分别这样写:

# while 循环
i = 0
while i < 5:
  i = i + 1
  if i == 3:
    continue  # 注意此处有缩进
  print(i)
print(‘循环结束‘)
# 逐行输出:1 2 4 5 循环结束

# for 循环
for i in range(5):
  i = i + 1
  if i == 3:
    continue  # 注意此处有缩进
  print(i)
print(‘循环结束‘)
# 逐行输出:1 2 4 5 循环结束

continue 语句在 while 循环 里和 for 循环 里的作用一样,都是用于跳过当前循环体中的剩余语句,继续进行下一轮循环。continue 语句只是跳过当前循环,和 break 语句不一样。所以不能跳出 “死循环”
 
 

原文地址:https://www.cnblogs.com/free-1124/p/11332494.html

时间: 2024-10-23 00:06:54

python初体验-循环的相关文章

ipython及Python初体验

阅读目录: Python环境体验 Python编辑器 ipython安装 Python提示符 Python初体验 print和变量 变量操作 内建函数:方法 数学运算:简单算术.随机数 关于模块 一.Python环境体验 1.常见Python编辑器介绍 1.在linux下使用vim 编辑Python脚本时,推荐--没有道理-- 2.Eclipse 3.notepad++:挺好用的一款编辑工具 4.IDLE (官方自带)交互式的开发语言集成环境 5.pycharm  第三方的工具:ipython

python初体验之小小爬虫

小月月是个懒家伙,博客更新好慢... 前几天拿到某公司的面试题,要求在Linux/Ubuntu/Debian/Suse/Centos下用python2.7开发一个爬虫,抓取百度新闻搜索结果的前三页标题+url. 这可把对python一窍不通的小月月难住了,肿么办呢...哦,最简单有效直接的方法就是网上查资料,ok,go~! 首先感谢http://www.1point3acres.com/bbs/thread-83337-1-1.html跟http://blog.csdn.net/column/d

Python初体验之基础语法(四)

所有测试语句基于Python 2.7.3 , Ubuntu 12.04 自学Python,如果哪里说的不恰当,还请指正.谢谢. 示例绝大部分来自博客园vamei的python教程 1.循环对象 #!/usr/bin/env python #coding=UTF-8 #包含一个next()方法 每次循环调用next() #直到StopIteration异常出现 停止调用next()方法 f = open('test.txt') for line in f: print line #生成器 自定义一

Python初体验

本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 .pyc是个什么鬼? 数据类型初识 数据运算 表达式if ...else语句 表达式for 循环 break and continue 表达式while 循环 作业需求 一. Python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语

Python初体验之基础语法(二)

所有测试语句基于Python 2.7.6 , Ubuntu 14.04 LTS 自学Python,如果哪里说的不对,还请指正.谢谢. 示例绝大部分来自博客园vamei的python教程 1.文件读写操作 一. 按字节读取文件 #!/usr/bin/env python #coding=UTF-8 #默认python编码是ASCII编码 要支持中文 #加上coding=UTF-8的声明 # open()打开文件 r只读 w写入 a追加 r+ w+ a+模式 # a+方式打开文件 指针指向结尾 ,

第三节 Hello world --python初体验

祭旗--hello world 据说简单优雅.功能强大是python的魅力所在,这里看到简单了,优雅是什么样的,接下来的学习中慢慢体会吧! 1 print ("Hello world") 数据类型和变量 数据类型 计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值.但是,计算机能处理的远不止数值,还可以处理文本.图形.音频.视频.网页等各种各样的数据,不同的数据,需要定义不同的数据类型.在Python中,能够直接处理的数据类型有以下几种:整数型.浮点型.

python初体验之基础语法(一)

所有测试语句基于Python 2.7.3 , Ubuntu 12.04 自学Python,如果哪里说的不对,还请指正.谢谢. 示例绝大部分来自博客园vamei的python教程 1.输出语句print() #!/usr/bin/env python #coding=UTF-8 #默认python编码是ASCII编码 要支持中文 #加上coding=UTF-8的声明 #输出语句 print ('你好 Python !!') 打印一条语句,括号中用单引号双引号貌似都可以, 语句结束也不必加;分号作为

Python初体验之基础语法(三)

所有测试语句基于Python 2.7.1 自学Python,如果哪里说的不恰当,还请指正.谢谢. 示例绝大部分来自博客园vamei的python教程 1.函数参数  关键字传递 #! /usr/bin/env python # coding=UTF-8 # 函数参数关键字传递 根据每个参数的名字传递参数-->无需遵照位置对应关系 # 可以与位置传递混用,但是直接的值传递的参数要出现在关键字参数之前 def sum(a, b, c): return a + b + c print "sum(

python初体验--我对python的体会

接触了python已经两周了,从一个程序小白发展到了对python有了一些简单的认识,虽然以前学过一些c语言,但是能感觉出来python与c之间的差别很大,python的计算能力比c要高得多,而且各种包使python使用起来非常方便,这可以让我们再平时可以利用python制作一些小的程序来计算一些问题,使学这门语言有了更多实用性.而且上课老师为我们展示python通过arduino制作温度计算和bim指数,并且通过数据绘画出图形化界面,利用其中的函数把数据做成图表使我更加感兴趣,感觉这些实验很有