官术网_书友最值得收藏!

一、知識點

(一)什么是列表?為什么要用列表?

我們已經學過了用變量保存數據。那我們來看看下面這個問題:假如你開了一家咖啡店,想記錄一年里每天賣出去幾杯咖啡,那該怎么辦呢?

一種辦法是建立365個變量,比如第1天賣出的咖啡的杯數、第2天賣出的咖啡的杯數、……、第365天賣出的咖啡的杯數。每個變量中保存一天的數據,每賣出一杯咖啡,就把相應的變量值增加1。

這種方法雖然正確,不過很麻煩:光是建立365個變量就很累,更不用說當修改變量的值時,得先找準變量了。

遇到這種情況時,列表是一個好的解決方案。列表,也叫作數組,顧名思義,就是我們把同類型的變量合在一起,做成一個表格。以上面的問題為例,我們建立一個列表,名字為“每天賣出的咖啡的杯數”,如圖8-1所示,這個列表有365項,第1項保存第1天賣出的咖啡的杯數,第2項保存第2天賣出的咖啡的杯數……這樣就方便多啦!

082-1

圖8-1 用列表記錄全年365天每天賣出的咖啡的杯數

(二)怎樣理解列表?

列表是存放很多變量的容器。打個比方,列表就像是一列高鐵,列表里的項就是高鐵的車廂。我們乘坐高鐵時需要知道自己在幾號車廂,訪問列表時也一樣,需要指明要用第幾項中保存的數據。

(三)對列表的操作

圖8-2中展示了對列表的基本操作示例,后面有詳細介紹。

082-2

圖8-2 對列表的基本操作示例

(1)創建列表

點擊左側的“變量”按鈕,再點擊“建立一個列表”,就能創建列表了;創建時,只需要指定列表名稱即可。和創建變量一樣,我們可以規定是所有角色都能夠使用這個列表,還是只有創建者能夠使用這個列表。剛創建的列表是空表,里面沒有任何數據。

(2)添加數據

在創建了列表之后,點擊左側的“變量”按鈕,會看到一系列積木塊,其中,使用“將……加入列表”積木可以向列表中添加一項;新添加的項總是放到列表的末尾。比如,當列表是空表時,新加入的數據放在第1項;再新加的數據,就放到第2項。卜老師提醒我們,Scratch中列表的項是從1開始編號的,其他計算機語言,比如C、Python等,都是從0開始編號。

另一種添加列表項的方法是使用“將……插入列表的第……項”積木,可以指定把一個數插入第幾項。比如,當列表中已有2項時,我們使用“將999插入第1項”積木,這樣第1項的值就變為999,而原來第1項保存的數放到第2項,原來第2項保存的數放到第3項。

(3)修改數據項

“將列表的第……項替換為……”積木可以直接把某一項保存的數據替換成新的值。

(4)刪除數據項

“刪除列表的第……項”積木只刪除一項,而“刪除列表的全部項”積木直接把列表清空。

(5)訪問數據項

使用“……的項目數”積木可以知道列表里現在共有幾項數據,使用“……的第……項”積木可以知道列表中的某一項保存的數據。我們也可以反過來:使用“……中第一個……的編號”積木,可以知道數據到底被保存在哪一項里了;當多個項里都保存了同樣的數據時,就返回第一個保存這個數據的項目的編號。

此外,使用“……包含……?”積木可以判斷列表中是否包含某個數據。

主站蜘蛛池模板: 德钦县| 贵德县| 澄城县| 宁河县| 新巴尔虎左旗| 黄冈市| 龙泉市| 阿拉善盟| 乌拉特前旗| 大名县| 福贡县| 本溪市| 从江县| 洪泽县| 盐源县| 汉寿县| 清水河县| 绍兴市| 循化| 小金县| 大悟县| 弥勒县| 同江市| 汉沽区| 上犹县| 内江市| 吕梁市| 信丰县| 潍坊市| 惠州市| 察雅县| 九龙城区| 梧州市| 东兰县| 盐边县| 台南县| 墨玉县| 秦安县| 淳化县| 和田市| 巨野县|