列表- Webduino Blockly 教學
文章推薦指數: 80 %
列表也稱作陣列,在程式碼裡頭,把數字、文字、列表或變數,按照順序組合起來。
這些按序排列資料集合就稱作列表,一個列表可以再細分為多個元素,或是一個列表內還包含 ...
列表
列表也稱作陣列,在程式碼裡頭,把數字、文字、列表或變數,按照順序組合起來。
這些按序排列資料集合就稱作列表,一個列表可以再細分為多個元素,或是一個列表內還包含其他列表,然而在進行比較複雜的運算時,往往也會透過列表的操作來實現。
打開WebduinoBlockly編輯器(https://blockly.webduino.io),展開左側目錄「基本功能」,點選「列表」,可以看到對應的列表積木。
以下列表積木的解說,將會使用網頁互動測試區域展示,打開網頁互動測試區,下拉選單選擇「顯示文字」,左側積木的目錄最下方會出現「顯示文字」相關積木,接下來將會使用這些積木來顯示數學式所運算的結果。
(積木)空列表
空列表通常使用在變數上,或是將一個列表清空使用,建議如果是要將變數宣告為列表,一開始要先將這個變數宣告為空列表。
(積木)建立列表
透過建立列表的積木,可以將指定的文字、數字、變數或子列表,依序放入列表的缺口裡。
建立列表預設有三個缺口,可以透過藍色小齒輪新增或刪除缺口。
如果在列表的三個缺口,分別放入0、1、2,顯示出來的數值就會用逗號分隔。
列表內還可以放入列表,在內層的列表稱為子列表,而這種形式的列表也稱作「多維陣列」,如果純粹顯示也會依序用逗號分隔。
如果會使用變數,也可以先賦予變數數值,然候用列表來裝載變數,呈現出來也會是一樣的結果。
(積木)建立重複內容列表
在空格放入變數、文字或數字,就會根據重複設定的次數,建立具有這些數值重複的列表。
舉例來說,在空格處放入文字a,重複五次之後就會變成有五個缺口的陣列,每個缺口內都是a。
(積木)列表長度
列表長度也就是列表積木缺口的數量。
假設列表有三個缺口,這個列表的長度顯示出來就會是3。
如果列表裡有子列表,並不會影響到這個列表的長度,因為長度還是取決於這個列表本身的缺口,所以下方的例子,就算是子列表加起來共有九個缺口,原本的列表還是只有三個缺口,所以長度為3。
(積木)空列表判斷
空列表判斷的積木主要是和「邏輯」積木搭配,可以判斷列表長度是否為0。
如果是列表長度為0(空列表),得到的結果會是true,如果列表長度不為0,結果則會是false。
比較需要注意的是,如果列表只有一個缺口,但沒有放入任何東西,列表的長度仍然是1(上面有講過,列表長度就是缺口數量),所以如果有一個缺口但沒有放入數值,顯示出來就會是false。
(積木)尋找列表內容
尋找列表內容的積木,會從列表當中尋找指定的文字或數值,找到之後會回傳這個文字或數值所在的位置(從前面數過來第幾個缺口)
假設陣列有五個缺口,裡面分別有五個文字Webduino、apple、orange、hello和yes,當我們尋找hello,就會回傳4的數字。
(積木)取出列表內容
透過取出列表內容的積木,指定某個缺口的順序數字,就可以取出這個缺口內的數值。
取出的方式分別有:取值、取出並移除(取出後列表這個缺口會消失,長度減1),移除(列表這個缺口消失,內容消失,長度減1)
如果使用「移除」,可以看到整個積木從原本會回傳值(積木凸出接頭在左側),變成操作性質的積木(積木接口在上下兩側)
當我們用取值,指定數字2,出來的數值就會是apple。
如果是使用「移除」,執行後就會發現陣列的apple消失了,原本陣列從五個缺口變成四個缺口。
(積木)指定列表內容
透過指定列表內容積木,可以指定一個缺口的數字和一個要放入缺口的數值,就會替換掉這個缺口原本的數值,或是從這個缺口後方插入一個數值。
第一個下拉選單,可以指定「設定」還是「插入」,使用「設定」會覆蓋原本缺口的內容,插入則是會在指定缺口後方新增一個缺口,列表長度會加1。
第二個下拉選單,可以指定某個缺口、倒數第幾個缺口、第一筆、最後一筆或隨機。
例如說有個列表,第二個缺口的數值是apple,透過指定列表內容將其換為QQQ,出來的結果就發現apple變成QQQ了。
(積木)取得一個範圍的列表內容
前面提到的陣列取值都是取出「單一」個缺口的值,如果要取得一個範圍內的數值,就要用這個積木來實現。
這個積木有兩個下拉選單,內容都一樣有三個選項,分別是缺口號碼、從第頭開始以及從最後開始。
舉例來說,如果有個長度為5的列表,內容是a、b、c、d和e這五個字母,如果取出2到4的數值,就會是b、c、d這三個字母。
(積木)文字與列表轉換
如果今天有一段文字,也可以透過「文字與列表轉換」的積木,將這段文字轉換成列表,轉換的方式就是透過「分隔符」,預設的分隔符是逗號,如果一段文字中間出現兩個逗號,則會分成三段,也就是具有三個缺口的列表。
假設有個變數,內容是一段文字「蘋果,橘子,芭樂,芒果」,透過「文字與列表轉換」的積木轉換成陣列,這時候就可以用列表的方式,取得第二個缺口的數值,就得到「橘子」的結果。
聯絡我們
如果對於Webduino產品有興趣,歡迎透過下列方式購買:
個人線上購買:https://store.webduino.io/(支援信用卡、超商取貨付款)
企業&學校採購:來信[email protected]或來電07-3388511。
如果對於這篇教學有任何問題或建議,歡迎透過下列方式聯繫我們:
Email:[email protected](如對於產品有使用上的問題,建議透過Email附上照片或影片聯繫)
Facebook粉絲團:https://www.facebook.com/webduino/
Facebook技術討論社團:https://www.facebook.com/groups/webduino/
Webduino基礎教學
Webduino開發板
馬克一號(介紹)
馬克一號(初始化設定)
WebduinoFly(介紹)
WebduinoFly(初始化設定)
WebduinoSmart(介紹)
WebduinoSmart(初始化設定)
開發板擴充設定
Arduino韌體下載與燒錄
使用WebSocket操控
WebduinoBlockly
認識WebduinoBlockly
WebduinoBlockly基本操作
WebduinoBlockly特殊功能
連動多塊開發板
腳位偵測設定
發光元件
LED
三色LED
LED點矩陣
輸入輸出
繼電器
蜂鳴器
按鈕開關
震動開關
搖桿
紅外線發射接收
環境偵測
超音波偵測
溫濕度偵測
人體紅外線偵測
聲音偵測
光敏電阻
可變電阻
土壤濕度偵測
三軸加速度計
無線感應
RFID
玩具及馬達
伺服馬達
Webduino綜合應用
元件應用
LED(兩顆交互閃爍)
LED(霹靂燈)
LED(語音聲控)
LED(人臉追蹤)
LED(Google表單操控)
三色LED(調色盤)
蜂鳴器(多人協奏)
蜂鳴器(會說話的鬧鐘)
傳感器應用
超音波(改變圖片大小)
超音波(控制LED)
超音波(控制三色LED)
溫濕度(Firebase紀錄)
RFID(控制Youtube)
可變電阻(改變Youtube音量)
聲音偵測(吹點矩陣蠟燭)
玩具改造
Smart自走車(組裝步驟)
Smart自走車(網頁遙控器操控)
Smart自走車(超音波避障)
Smart自走車(溫濕度感測車)
Smart智慧路燈(組裝步驟)
Smart智慧路燈(接線教學)
Smart飛天車(組裝步驟)
Smart飛天車(接線教學)
馬克一號自走車(鍵盤操控)
馬克一號自走車(行動裝置操控)
馬克一號自走車(循跡功能)
WABot機器人(初始化設定)
WABot機器人(基礎操控)
百元玩具車大改造
智慧生活
智慧植栽(水泵)
智慧插座(組裝與操控)
智慧追蹤(伺服馬達+攝影機)
Webduino雲端平台
基本介紹
註冊與登入
Blockly程式積木
Device裝置管理(裝置認證)
Device裝置管理(雲端更新)
兌換券(領取與添加新功能)
發光元件
LCD螢幕
七段顯示器
輸入輸出
MP3播放器
環境偵測
PM2.5細懸浮微粒偵測
顏色感測器
電子羅盤
光度計
溫濕度計
資料庫
Google試算表(設定)
Google試算表(儲存)
Google試算表(讀取)
綜合應用
記錄PM2.5(Google試算表)
玩具改造
Smart智慧小屋(組裝步驟)
Blockly教學
基本功能
變數
流程
文字
數學式
列表
邏輯
迴圈
進階功能
控制台
等待
數值轉換
鍵盤行為
語音聲控
語音朗讀
行動裝置
網頁互動區
文字、點擊、圖片
顏色、按鈕、拉霸
遙控器
Youtube
影像追蹤
創意應用
抽籤並朗讀姓名
大樂透自動選號
隨機組合朗讀語句
語音朗讀逐字稿
小時鐘
語音報時
九九乘法你問我答
BlocklyGames
迷宮
鳥
烏龜
影片
池塘導師
Dr.Smart教學
開發板元件
三色LED
三色LED(色彩輪播)
光敏電阻
光敏電阻(色彩變化)
按鈕開關
按鈕開關(控制顏色)
按鈕開關(控制Youtube)
元件及傳感器
LED
蜂鳴器
震動開關
LED點矩陣
超音波偵測
溫濕度偵測
綜合應用
蜂鳴器(多人協奏)
超音波(倒車雷達)
超音波(控制Youtube)
LED點矩陣(顯示距離)
LED點矩陣(顯示溫度)
按鈕開關(控制蜂鳴器)
實戰智慧插座
基本操控
組裝智慧插座
網頁操控智慧插座
傳感器應用
超音波偵測距離
光線偵測
人體紅外線偵測
聲音偵測
電視機遙控器
按鈕開關
電流急急棒
土壤濕度偵測
RFID感應
進階應用
語音辨識
人臉、顏色追蹤
手機陀螺儀
聊天室(原理)
聊天室(前後端實作)
Google試算表(原理)
Google試算表(前後端實作)
Google地圖(原理)
Google地圖(前後端實作)
Youtube互動
Opendata實作
Node-Red(基礎操作)
Node-Red(Twitter)
Node-Red(E-mail)
日幣匯率(Node-Red爬蟲)
日幣匯率(Node-js爬蟲)
常見問題
Webduino相關
關於Webduino
購買Webduino產品
技術支援與合作
Webduino開發板
關於Webduino開發板
連線相關&初始化設定問題
Web:Bit相關問題
WebduinoSmart相關問題
其它問題
延伸文章資訊
- 1大樂透自動選號- Webduino Blockly 教學
有了包含1~49 數字的陣列後,必須要再建立一個變數result 作為結果的陣列,由於這個陣列只會包含六個數字( 因為大樂透只會取出六個數字),所以一開始同樣用「指定間隔迴圈 ...
- 2Namespace: array | Blockly | Google Developers
Namespace: array. Blockly.utils.array. namespace static. 這對你有幫助嗎? Except as otherwise noted, the ...
- 3八年級 - 科技課程網站
陣列資料結構的概念與應用. 1.何謂陣列? 2.陣列資料結構的概念 3.資料結構的種類 ... Blockly 的陣列程式設計實作-氣泡排序 8.Blockly 的陣列程式設計實作-循序搜尋
- 4教學單元一:陣列程式設計實作
了解陣列的基本概念。 了解迴圈應用。 了解判斷式。 先備知識. 基本程式設計觀念。 Blockly 程式設計。 運算思維. 抽象化:由姓名與名次的關係來理解陣列的編號與內含 ...
- 5108資訊科技銜接課程: Blockly 積木程式 - 快樂學習網
Blockly 是Google 所推出的圖像式程式編輯工具,不需安裝任何的外掛程式,只要打開瀏覽器就可以開始進行程式創作,透過積木的拖曳和組合,完全不用輸入任何一個程式 ...