Python中列表的遍历
2014-03-03 14:00
260 查看
1.for语句的用法
在C++中,常用如下遍历方式:
而在Python中常用循环对象来遍历列表,在这里,for结构自动调用next()方法,将该方法的返回值赋予给循环对象it。循环知道出现StopIteration的时候结束。相对于序列,用循环对象的好处在于:不用在循环还没有开始的时候,就生成好要使用的元素。所使用的元素可以在循环过程中逐次生成。这样,节省了空间,提高了效率,编程更灵活。
在上面的程序中,无法知道当前访问元素的索引,于是有如下代码:
同时需要索引,又结合迭代器,就可以采用内置的enumerate函数,代码如下:
2.表推导方法
表推导(list comprehension)是快速生成表的方法。它的语法简单,很有实用价值。
3.zip函数
如果你多个等长的序列,然后想要每次循环时从各个序列分别取出一个元素,可以利用zip()方便地实现:
每次循环时,从各个序列分别从左到右取出一个元素,合并成一个tuple,然后tuple的元素赋予给a,b,c
name = ['lsj','sps','sjn']
number = [123,4,5]
noteBook = []
for pair in zip(name,number):
noteBook.append(pair)
print noteBook
在C++中,常用如下遍历方式:
for(int i=0; i<len; ++i){ cout<<arr[i]<<" "; }
而在Python中常用循环对象来遍历列表,在这里,for结构自动调用next()方法,将该方法的返回值赋予给循环对象it。循环知道出现StopIteration的时候结束。相对于序列,用循环对象的好处在于:不用在循环还没有开始的时候,就生成好要使用的元素。所使用的元素可以在循环过程中逐次生成。这样,节省了空间,提高了效率,编程更灵活。
for it in lst: ##自动调用迭代器,自动检测StopIteration print(it)
在上面的程序中,无法知道当前访问元素的索引,于是有如下代码:
for i in range(len(lst)): print(lst[i])
同时需要索引,又结合迭代器,就可以采用内置的enumerate函数,代码如下:
for index, it in enumerate(sequence): process(index, it)
2.表推导方法
表推导(list comprehension)是快速生成表的方法。它的语法简单,很有实用价值。
L = [x**2 for x in range(10)]
3.zip函数
如果你多个等长的序列,然后想要每次循环时从各个序列分别取出一个元素,可以利用zip()方便地实现:
ta = [1,2,3] tb = [9,8,7] tc = ['a','b','c'] for (a,b,c) in zip(ta,tb,tc): print(a,b,c)
每次循环时,从各个序列分别从左到右取出一个元素,合并成一个tuple,然后tuple的元素赋予给a,b,c
name = ['lsj','sps','sjn']
number = [123,4,5]
noteBook = []
for pair in zip(name,number):
noteBook.append(pair)
print noteBook
相关文章推荐
- 用python遍历列表,同时输出索引号和值,类似php的foreach(array_expression as $key => $value)
- 初学 Python — 列表遍历
- Python新手笔记之python迭代器遍历列表
- python 如何在一个for循环中遍历两个列表
- python列表和字符串的三种逆序遍历方式
- python通过索引遍历列表的方法
- python中遍历列表、元组的技巧
- Python 2.7.9 Demo - 014.列表List的定义、取值、遍历
- Python中元组、列表、字典的遍历和相互转化
- python 的列表遍历删除
- Python[基础] 列表遍历
- Python遍历列表的四种方式
- 【代码学习】PYTHON 列表循环遍历及列表常见操作
- python回顾,yield特点,三元运算符,列表解析式,迭代器生成式,只可遍历一次的试码
- Python006循环和遍历列表元组集合字典
- Python_Python遍历列表的四种方法
- python 的列表遍历删除
- Python遍历列表的四种方式
- python 列表遍历方式(含下标)
- 多维列表排序、文件夹遍历、python列表字典csv读取