清單積木 ( Lists Blocks )
清單就是程式語言裡的「陣列」,清單就像是一個有很多抽屜的櫃子,每個抽屜都有自己的編號,每個抽屜也都可以存放資料,清單積木 Lists Blocks 可以針對清單的資料,進行建立、添加、讀取、替換或刪除的動作,或是取出特定編號的資料。
建立清單
點擊選單裡「建立一個清單」的按鈕,會彈出一個新增清單對話視窗,可以輸入清單的名稱,並選擇「適用於所有角色」還是「僅適用於當前角色」。
- 適用於所有角色:全域清單,所有的角色都能使用、編輯這個清單。
- 僅適用於當前角色:區域清單,只有當前角色能使用、編輯這個清單。
清單建立後,在積木選單會出現這個清單的積木,同時在舞台上也會出現清單的方框,該方框可以藉由「清單...顯示」或「清單...隱藏」積木,來控制是否顯示。
新建立的清單是一個空的清單 ,內容沒有任何項目 ( 會顯示 empty,長度 0 ),點擊舞台上的清單方框左下的「 + 按鈕」可以增加項目,每個項目都可以編輯內容,點擊每個項目後方的「 x 按鈕」可以刪除該項目。
Scratch 的清單最多支援 20 萬個項目,因此可以使用「匯入 / 匯出」的功能來處理大量資料:
- 匯入:匯入純文字 TXT 或 CSV 格式的檔案,匯入的內容以「換行」為每個項目的分隔 ( row、列 ),一行代表一個項目,項目內逗號為每個項目的內容分隔 ( column、欄 )
- 匯出:匯出純文字 TXT 格式的檔案。
舉例來說,如果要匯入下方的內容,匯入時 Scratch 就會詢問「該使用哪一欄」,選擇指令欄位,就會匯入資料。
添加
「添加...到清單」積木,可以添加指定內容的項目到清單裡。
使用「重複 5 次」積木,就能在清單裡添加 5 個項目。
如果是將某個清單添加到另外一個清單內,則清單的元素會合併成一行 ( 合併的項目之間會用一個空白分隔 )。
插入
「插入...到清單」積木,可以將指定的項目,插入在清單指定的位置。
舉例來說,下圖是將 thing 插入在第 3 項,插入項目之後,清單的長度也會從 3 變成 4。
替換
「插入...到清單」積木,可以將清單指定位置的項目,更換為指定的內容。
舉例來說,下圖是將清單的第 3 項更換為 thing,更換項目內容不會影響清單長度。
刪除
「刪除...項目」積木,可以刪除清單裡指定的項目,或將清單的全部項目清空。
舉例來說,下圖是將清單的第 2 項刪除,刪除項目後,清單長度從 3 變成 2。
刪除項目不等於刪除清單,如果要刪除清單,可以在積木選單的清單上,按下滑鼠右鍵,就會出現「重新命名」和「刪除清單」的選項,刪除清單後,清單內容的元素也會一併刪除。
取得清單內容
「取得清單內容」積木,可以取得清單裡項目的內容、編號,以及清單的長度。
舉例來說,下圖可以讓貓咪角色講出第二個項目的內容。
如果搭配重複積木,也可以做出貓咪依序說出清單項目的結果。
範例參考:貓咪依序說出清單項目
判斷是否包含
「判斷清單是否包含」積木,可以判斷清單裡是否包含某個項目,因為是菱形積木,如果有包含項目,會產生 true 的訊息,沒有包含項目,會產生 false 的訊息。
搭配「如果...那麼」積木,就能在用滑鼠點擊貓咪角色時,講出有沒有蘋果的文字。
顯示 / 隱藏
「顯示 / 隱藏清單」積木可以控制清單是否顯示在舞台上。
意見回饋
如果有任何建議或問題,可傳送「意見表單」給我,謝謝~