python:7:循环与迭代
来源:互联网 发布:数据库本地连接不上 编辑:程序博客网 时间:2024/06/11 21:05
第一章:python
第七节:循环与迭代
1,循环
for循环迭代选取序列元素的三种方式
1.序列项迭代 >>> list1=[1, 2, 3]
>>> for a in list1:
... ····print a
1
2
3
2.序列索引迭代 >>> for x in range(len(list1)):
... ····print list1[x]
1
2
3
3.序列项和序列索引同时迭代 >>> for x,a in enumerate(list1):
... ····print x,a
0 1
1 2
2 3
range()函数的用法
range(start, end, step) #起始值,终止值,步长值
例如:range(6, 2)和range(6, 1)这样的写法都是不允许的,因为没有设定起始值,正确写法如下:
range(0, 6, 2)和range(0, 6, 1)
循环中break的用法
break语句用于结束当前循环(如果有多层循环时,break仅退出一层循环),一般用if语句进行检查判断,常用于寻找第一个出现的值,之后退出
在整个for循环中,只要出现break就结束整个循环,出现break之后,else当中的内容不会出现,因为这个for循环时被中断的,而else是在for循环正常结束之后才执行的内容。 >>> list1=[9, 7, 4, 3, 3]
>>> list2=[1, 2, 4]
>>> x=0
>>> while x < len(list2):
... ····if list2[x] in list1:
... ········print list2[x]
... ········break
... ····x+=1
>>> for x in range(len(list2)):
... ····if list2[x] in list1:
... ········print list2[x]
... ········break
continue语句
当遇到continue语句时,程序会终止当前循环,并忽略剩余语句,然后回到循环的顶端;在开始下一次迭代前,如果是条件循环,我们将验证条件表达式;如果是迭代循环,我们将验证是否还有元素可迭代。 >>> l=[1,4,7,4,6,5,4,6]
>>> for a in l:
... ····if a==4:
... ········continue
... ····print a,
1 7 6 5 6
#不输出l当中数值为4的结果 >>> for a in l:
... ····if a!=4:
... ········continue
... ····print a,
4 4 4
#仅输出l当中数值为4的结果 >>> for a in l:
... ····if a!=4:
... ········continue
... ········print a,
不输出任何结果,因为print a, 是continue语句后面被忽略的内容
pass语句
主要用于占位,可使if,for及while语句不执行内容;
循环中的else语句
在while及for循环中,else子句只循环完成后执行,也就是说break语句也会跳过else块,只要for或while循环时正常结束的(不是通过break)else子句就会执行
2,迭代
>>> t=(123, 'xyz')
>>> i=iter(t)
>> i
<tupleiterator object at 0x7f0874000a990>
>>> i.next()
#123 >>> i.next()
#‘xyx’ >>> i.next()
stopIteraion
当没有元素可取时会抛出一个StopIteration异常
iter()作为一个迭代器,把可迭代对象(列表,元组,文件对象,字典(只是字典的键)),放入括号中,作为一个对象后,利用next()函数,从前向后取出迭代对象中的元素。
字典可以迭代字典的键,值或者键值对 >>> d={1: 2, 3: 4}
>>> a=iter(d.items())
#迭代键值对 >>> a.next()
(1, 2)
>>> iter(d.keys())
#迭代键 >>> iter(d.values())
#迭代值
- python:7:循环与迭代
- Python进阶06 循环对象与迭代
- javaScript 迭代与循环
- python语法 之 循环迭代
- python初学四 循环和迭代
- Python的for循环迭代
- python--判断、循环和迭代
- [python笔记]for循环中循环变量迭代问题
- python切片与迭代
- python 切片与迭代
- goto、迭代与循环控制
- Python中的并行迭代与编号迭代
- 2016.4.7Python高级特性之切片与迭代
- python中for循环/迭代的技巧
- python学习笔记(六)循环、迭代
- 迭代 循环 区别
- each()循环 迭代
- 迭代循环回路
- P1208 [USACO1.3]混合牛奶 Mixing Milk
- SpringMVC拦截器Interceptor
- hadoop 编程 学习之路
- ubuntu 常见错误--Could not get lock /var/lib/dpkg/lock
- 牛客 题库
- python:7:循环与迭代
- matlab 2016a破解中文版安装教程(windows)
- WEB前端开发(一)-------------标记(一)
- java中length,length(),size()区别
- POJ 1797 Heavy Transportation——spfa
- C++ 标准库 string类型(三)
- 39. Combination Sum &&40. Combination Sum II
- 2017 ACM-ICPC 亚洲区(乌鲁木齐赛区)网络赛 F. Islands
- 孩子出生,护士突然一阵尖叫,全家人崩溃了