2.3.1 Python基本数据结构

本节目标:

  • 了解数据结构的用处

  • 初步掌握Python中的数据结构

  • 掌握for循环

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

  • 浏览材料,对数据结构有大致了解。

  • 简单概括起来,数据结构将数据封装起来,让数据“有结构”,

    提供若干接口,更方便存储、访问、修改等操作。

如果我们有两个小海龟,我们可以分别叫它们t1t2, 那如果有10个……42个呢?

这里,小海龟可以看作是数据,我们需要数据结构来让我们更方便地操纵这些小海龟。

color方法可以改变小海龟的颜色(试着自己搞清楚color的用法), 如果每个小海龟的颜色不同,又要如何管理这些颜色呢?

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

  • 阅读材料

    ,了解Python的基本数据结构,并为刚才的两个问题选择合适的数据结构。

刚才的材料中提到“列表的迭代”,其中用了for循环。 for循环和while循环有相似之处,区别在于for用于遍历“可迭代”的对象 (list,dict,tuple,str都是可迭代的对象), while用于条件判断。

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

  • 选做练习,图中拿斜线标出来的区域表示整个涂成某种颜色。

  • 可能用到的Turtle类方法:pencolorfillcolorbegin_fillend_fill

    利用help可以看到一些使用这些方法的例子。

我们以第一幅图为例来讲一讲~

数一数我们发现图中有6种颜色,并且每种颜色的图形是一样。 所以我们可以用一个循环,并且用一个list将6种颜色存起来。

for color in ['gray', 'blue', 'green', 'cran', 'red', 'purple']:
    turtle.pencolor(color)
    turtle.fd(20)
    turtle.rt(60)
    turtle.fd(50)
    turtle.lt(60)
    turtle.fd(50)
    turtle.rt(60)

这里,我们用了一个list,它的元素有['gray', 'blue', 'green', 'cran', 'red', 'purple']。 注意这些元素都是字符串。如果不小心写成[gray, blue, green, cran, red, purple], 那Python会去找叫gray的变量,把它的值作为list的元素。

Tasks For Tutors

  • 你平时学习、工作中会使用什么,或者你了解什么更复杂一些的数据结构吗?

    它们设计出来是为了解决什么问题?

Last updated