2.python中对于序列比较基础的迭代方法。

简介:

一. 并行迭代。

如果并行迭代,首推zip()函数!!!

比如说现在有两个长度一样的列表,这两个列表中,索引位置相同的值是有关联的,现在必须要把这两个表的值同时遍历,如果遇到这种情况,就必须使用并行迭代了。

name = ["suhaozhi","andy","tony"]

age = [22,33,44]

假如说name表是每个人的名字,age表是这三个人的年龄,都是按位置对应的,现在需要同时循环迭代,这两个列表。

name = ["suhaozhi","andy","tony"]             

age = [22,33,44]                              

                                              

for i in range(len(name)):                    

    print "name:%s age:%s" %(name[i],age[i])  

输出结果如下:

name:suhaozhi age:22

name:andy age:33

name:tony age:44


这样确实实现了两个列表同时迭代循环,但是有个更简单的办法可以实现这个功能,那就是zip函数。

name = ["suhaozhi","andy","tony"]

age = [22,33,44]

for n,a in zip(name,age):

    print "name:%s age:%s" %(n,a)


注意!!关于zip函数有两点需要补充:

  1. zip函数可以同时“压缩”n多个序列。

  2. zip函数还可以处理长度不相等的序列,当两个或者多个长度不相等的序列放在一起处理的时候,以最短的序列为准,只要最短的序列用完,就会停止。

下面是例子:

l1 = ['one','two','three']

l2 = [1,2,3,4,5,6]

print zip(l1,l2)

输出结果如下:

[('one', 1), ('two', 2), ('three', 3)]

最短序列用完,就不在往后处理了。


二.按索引迭代。

如果想迭代序列中的对象,同时又想获得当前对象的索引,这时就可以使用enumerate函数。

l1 = ['a','b','c','d','e']

for i in enumerate(l1):

    print i

输出结果如下:

(0, 'a')

(1, 'b')

(2, 'c')

(3, 'd')

(4, 'e')




      本文转自苏浩智 51CTO博客,原文链接:http://blog.51cto.com/suhaozhi/1906505,如需转载请自行联系原作者






相关文章
|
9天前
|
机器学习/深度学习 数据采集 算法
时间序列结构变化分析:Python实现时间序列变化点检测
在时间序列分析和预测中,准确检测结构变化至关重要。新出现的分布模式往往会导致历史数据失去代表性,进而影响基于这些数据训练的模型的有效性。
26 1
|
20天前
|
Python
探索Python中的魔法方法:打造你自己的自定义对象
【8月更文挑战第29天】在Python的世界里,魔法方法如同神秘的咒语,它们赋予了对象超常的能力。本文将带你一探究竟,学习如何通过魔法方法来定制你的对象行为,让你的代码更具魔力。
36 5
|
19天前
|
Python
python保存两位小数的几种方法,python2保留小数
python保存两位小数的几种方法,python2保留小数
52 2
|
18天前
|
机器学习/深度学习 算法 数据挖掘
6种有效的时间序列数据特征工程技术(使用Python)
在本文中,我们将探讨使用日期时间列提取有用信息的各种特征工程技术。
62 0
|
10天前
|
机器学习/深度学习 索引 Python
python之序列
python之序列
131 59
|
2天前
|
机器学习/深度学习 数据采集 算法
数据稀缺条件下的时间序列微分:符号回归(Symbolic Regression)方法介绍与Python示例
有多种方法可以处理时间序列数据中的噪声。本文将介绍一种在我们的研究项目中表现良好的方法,特别适用于时间序列概况中数据点较少的情况。
10 1
数据稀缺条件下的时间序列微分:符号回归(Symbolic Regression)方法介绍与Python示例
|
3天前
|
消息中间件 关系型数据库 数据库
Python实时监测数据库表数据变化的方法
在实现时,需要考虑到应用的实时性需求、数据库性能影响以及网络延迟等因素,选择最适合的方法。每种方法都有其适用场景和限制,理解这些方法的原理和应用,将帮助开发者在实际项目中做出最合适的技术选择。
28 17
|
3天前
|
XML 数据格式 Python
Python技巧:将HTML实体代码转换为文本的方法
在选择方法时,考虑到实际的应用场景和需求是很重要的。通常,使用标准库的 `html`模块就足以满足大多数基本需求。对于复杂的HTML文档处理,则可能需要 `BeautifulSoup`。而在特殊场合,或者为了最大限度的控制和定制化,可以考虑正则表达式。
20 12
|
9天前
|
Python
Python中几种lambda排序方法
【9月更文挑战第7天】在Python中,`lambda`表达式常用于配合排序函数,实现灵活的数据排序。对于基本列表,可以直接使用`sorted()`进行升序或降序排序;处理复杂对象如字典列表时,通过`lambda`指定键值进行排序;同样地,`lambda`也适用于根据元组的不同位置元素来进行排序。
|
20天前
|
机器学习/深度学习 分布式计算 大数据
几行 Python 代码就可以提取数百个时间序列特征
几行 Python 代码就可以提取数百个时间序列特征