返回

Python基础入门笔记(二)

人工智能

1. 迭代器简介

迭代器(iterator)是一个可以记住遍历位置的对象。它从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。

迭代器有两个基本的方法:

  • iter():返回一个新的迭代器对象。
  • next():返回迭代器当前指向的元素,并将迭代器指向下一个元素。

next() 方法抛出 StopIteration 异常时,表示迭代器已经遍历完了所有元素。

2. 序列和集合

序列和集合是 Python 中两种常用的数据类型。序列是有序的元素集合,而集合是无序的元素集合。

序列包括列表、元组和字符串。列表是可以修改的,而元组和字符串是不可修改的。

集合包括集合和冻结集合。集合是无序的元素集合,而冻结集合是不可修改的无序元素集合。

3. 使用迭代器遍历序列和集合

我们可以使用 for 循环来遍历序列或集合。

# 遍历列表
numbers = [1, 2, 3, 4, 5]

for number in numbers:
    print(number)

# 遍历元组
fruits = ('apple', 'banana', 'cherry')

for fruit in fruits:
    print(fruit)

# 遍历字符串
name = "John Doe"

for character in name:
    print(character)

# 遍历集合
fruits = {'apple', 'banana', 'cherry'}

for fruit in fruits:
    print(fruit)

# 遍历冻结集合
frozen_fruits = frozenset({'apple', 'banana', 'cherry'})

for fruit in frozen_fruits:
    print(fruit)

我们也可以使用 iter()next() 方法来遍历序列或集合。

# 使用 iter() 和 next() 遍历列表
numbers = [1, 2, 3, 4, 5]

iterator = iter(numbers)

while True:
    try:
        number = next(iterator)
        print(number)
    except StopIteration:
        break

# 使用 iter() 和 next() 遍历元组
fruits = ('apple', 'banana', 'cherry')

iterator = iter(fruits)

while True:
    try:
        fruit = next(iterator)
        print(fruit)
    except StopIteration:
        break

# 使用 iter() 和 next() 遍历字符串
name = "John Doe"

iterator = iter(name)

while True:
    try:
        character = next(iterator)
        print(character)
    except StopIteration:
        break

# 使用 iter() 和 next() 遍历集合
fruits = {'apple', 'banana', 'cherry'}

iterator = iter(fruits)

while True:
    try:
        fruit = next(iterator)
        print(fruit)
    except StopIteration:
        break

# 使用 iter() 和 next() 遍历冻结集合
frozen_fruits = frozenset({'apple', 'banana', 'cherry'})

iterator = iter(frozen_fruits)

while True:
    try:
        fruit = next(iterator)
        print(fruit)
    except StopIteration:
        break

4. 总结

迭代器是 Python 中用于遍历序列或集合的对象,其提供了一种简单、高效的方式来访问序列或集合中的元素。迭代器有两个基本的方法:iter()next(),且字符串、列表或元组对象都可用于创建迭代器。

通过使用 for 循环或 iter()next() 方法,我们可以轻松地遍历序列或集合中的元素。