在 Python 中有效使用迭代

pythonserver side programmingprogramming

在本文中,我们将了解如何在 Python 3.x 或更早版本中实现迭代器及其有效实现。让我们来看看 Python 中实现迭代器的各种方法。

类型 1 −已知长度的 While 循环的实现

示例代码

genre = ("Python","C","C++","Java")
print("The topic available on Tutorial's Point are:")
i = 0
while (i < len(genre)):
    print (genre[i])
    i += 1

解释

由于其结构不太紧凑,这种方法并不受欢迎。在这种情况下,错误处理也很困难。大型程序或设计不使用这种方法。

输出

The topic available on Tutorial's Point are:
Python
C
C++
Java

类型 2 − 已知长度的 for 循环的实现

示例代码

genre = ("Python","C","C++","Java")
print("The topic available on Tutorial's Point are:")
for i in range(len(genre)):
   print (genre[i])

解释

这是程序员最喜欢使用的方法。这里 range() 函数用作增加或减少迭代器的媒介。默认情况下,它将迭代器增加 1。如果我们指定增加或减少的步长,它将根据提供的步长值工作。

输出

The topic available on Tutorial's Point are:
Python
C
C++
Java

类型 3 − 无长度 for 循环的实现

示例代码

genre = ("Python","C","C++","Java")
print("The topic available on Tutorial's Point are:")
for i in genre:
   print (i)

解释

此方法通常在线性数据结构(如列表、字典、元组、n 维数组等)中更受欢迎。迭代器遍历指定结构的每个组件并将数据显示到控制台。此类型中增量是自动的。

输出

Tutorial's Point 上可用的主题是:Python C C++ Java

类型 4 −通过枚举数据类型实现

示例代码

genre = ("Python","C","C++","Java")
iterator = enumerate(genre)
print("The topic available on Tutorial's Point are:")
for i,v in iterator:
   print (v,end="\t")

解释

在这种情况下,枚举帮助我们创建一个字典,其中索引作为键,列表中的值作为其对应的值。这里我们必须指定两个迭代器;一个用于索引,另一个用于显示值。

输出

The topic available on Tutorial's Point are:
PythonCC++Java

通过 Zip 函数实现类型 5 −

示例代码

genre = ("Python","C","C++","Java")
extras = ["C#","Dart","Erlang","Go"]
print("The topic available on Tutorial's Point are:")
for i, j in zip(genre,extras):
   print (i, j,sep="\t")

解释

这里我们指定两个线性数据结构,即列表、数组或元组,借助两个迭代器。为此,我们借助 zip 函数,该函数在处理各种场景时非常方便。它占用较短长度的数据结构并跳过较大数据结构的内容。

输出

The topic available on Tutorial's Point are:
PythonC#
CDart
C++Erlang
JavaGo

结论

在本文中,我们学习了如何在 Python 3.x 中实现堆栈和队列数据结构。或更早版本。您可以实现相同的算法,以任何其他编程语言实现堆栈/队列检测器程序。


相关文章