列表:創建列表
- 2019 年 10 月 30 日
- 筆記
列表是Tcl語言中最重要的一種數據結構。什麼是列表?列表是元素的有序集合,各個元素可以包含任何字元串,例如空格,反斜杠,換行符等。列表表現為特定結構的字元串,這意味著可以把它們賦值給一個變數,可以把它們做為參數傳給命令,可以把它們嵌套到其他列表中。
在Tcl中創建一個新的列表是很容易的。可通過如下幾種方法。
01
直接利用花括弧{}創建
如圖1所示,通過花括弧的方式創建列表賦給變數a,列表長度為3(可通過llength查詢列表長度,後續會介紹)

02
通過list命令創建
list本身就是一個Tcl命令,因此在與set一起使用時就要用到命令置換符[]。創建與圖1相同的列表,採用list命令如圖2所示。

03
通過concat命令創建列表
concat的參數可以是任意多個列表,從而實現列表的拼接。如圖3所示,利用concat命令將圖1的列表a與圖2的列表b拼接為新的列表賦給c。圖4顯示了concat拼接3個列表,其中第一個列表是空列表。


04
通過lrepeat命令創建列表
lrepeat命令接收兩個參數,第一個參數是重複次數,第二個參數是重複值。如圖5所示,lrepeat創建了一個長度為4的列表,該列表中包含4個「**」。

05
創建空列表
所謂空列表是指該列表是存在的,但不包含任何值。通常創建空列表用於列表初始化。可通過{}直接創建空列表,也可通過list命令創建空列表。

結論
儘管有多種方法創建列表,但從Tcl程式碼風格的角度看,通過list命令創建列表是最為穩妥的方法。

