Python入门——迭代器



以下内容来自于网课学习笔记。

使用的环境:

  • Window10+64位操作系统
  • PyCharm+Python3.7

1. 字符串遍历

# 字符串迭代
for i in "(๑′ᴗ‵๑) ❤":
    print(i)

2. 字典遍历

dict = {"WaitFoF":  "💐",
        "Miss":     "🌼",
        "Dick":     "☘",
        "Tom":      "🌳",
        "Moc":      "🌵",
        "FOS":      "🥗"
        }
        
for each in dict:
    print("%s————>%s" % (each, dict[each]))

3. 迭代器

string = "ლ(′◉❥◉`ლ)"
it = iter(string)
while True:
    try:
        each = next(it)
    except StopIteration:
        break
    print(each)

4. 迭代器类

class Fibs:
    def __init__(self):
        self.a = 0
        self.b = 1

    def __iter__(self):
        return self

    def __next__(self):
        self.a, self.b = self.b, self.a + self.b
        return self.a


fibs = Fibs()

for each in fibs:
    if each < 20:
        print(each)
    else:
        break

5. 控制迭代的范围

# 加参数 控制迭代的范围
class Fibs:
    def __init__(self, n=10):
        self.a = 0
        self.b = 1
        self.n = n

    def __iter__(self):
        return self

    def __next__(self):
        self.a, self.b = self.b, self.a + self.b
        if self.a > self.n:
            raise StopIteration
        return self.a

fibs = Fibs()
for each in fibs:
    print(each)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章