2.3.2 迭代器

本节目标:

  • 掌握迭代器的用法

  • 完成本周的“大作业”:小海龟赛跑

Learning By Reading 难度:★ 重要性:★★★★★

  • 阅读材料(的前半部分),

    了解迭代器与for

Learning By Reading 难度:★ 重要性:★★★★★

  • 生成list有另外一种强大的方式“列表解析”。看材料

  • 比如,想要一个10个小海龟的list,我们可以用[turtle.Turtle() for i in range(10)]来生成。

  • 但列表解析中不支持临时变量,即类似

    for i in range(20):
      j = f(i)
      xlist.append((i+j)**j)

    不太方便用列表解析处理。

Learning By Thinking 难度:★★ 重要性:★★★

  • 这篇

    文章看似想到了一个好方法处理这个问题,这种方法有什么缺点吗?

Learning By Doing 难度:★★★ 重要性:★★★★★

  • 小海龟赛跑:将若干个不同颜色的小海龟排成一排,

    轮流随机向前爬一定距离,最先爬过终点的小海龟获胜。

    效果示例见这里

更多练习题

提供更多练习题供大家根据自己需要选做。

  • 这里有100道属于用来熟悉数据结构、函数等Python基本特性的题目。

    如果觉得自己写代码还有点生疏,经常想不起来应该怎么写,可以用这些题来练练手。

    不过需要特别注意的是,虽然这100题都给了代码,但是代码是Python2写的,

    直接放在Python3上可能会报错。所以就没办法直接抄了嗯~

  • Leetcode是国外著名刷题网站,

    题目数量较多,里面的题目比较基础,不会牵涉到比较复杂的算法和数据结构。

    对自己比较有自信的可以直接从Hard难度开始XD

  • 这个github库里面有一些相对较实用的练习题,

    但是需要用到一些之前教程里没有提到的库。

    而了解这些库可能需要花一定的时间。

Last updated