列表(List) 是Tcl中可用的基本数据类型之一,它用于表示元素的有序集合,它可以在同一列表中包括不同类型的元素,此外,一个列表可以包含另一个列表。

创建列表

List的一般语法如下:

set listName { item1 item2 item3 .. itemn }
# or
set listName [list item1 item2 item3]
# or 
set listName [split "items separated by a character" split_character]

下面给出一些例子-

#!/usr/bin/tclsh

set colorList1 {red green blue}
set colorList2 [list red green blue]
set colorList3 [split "red_green_blue" _]
puts $colorList1
puts $colorList2
puts $colorList3

执行以上代码后,将产生以下输出-

red green blue
red green blue
red green blue

追加数据

下面给出了将元素追加到列表的语法-

append listName split_character value
# or
lappend listName value

下面给出一些例子-

#!/usr/bin/tclsh

set var orange
append var " " "blue"
lappend var "red" 
lappend var "green" 
puts $var

执行以上代码后,将产生以下输出-

orange blue red green

列表长度

列表长度的语法在下面给出-

llength listName

列表长度的示例如下-

#!/usr/bin/tclsh

set var {orange blue red green}
puts [llength $var] 

执行以上代码后,将产生以下输出-

4 

列表索引

在特定索引处选择列表项的语法如下-

lindex listname index

下面给出索引处列表项的示例-

无涯教程网

#!/usr/bin/tclsh

set var {orange blue red green}
puts [lindex $var  1]

执行以上代码后,将产生以下输出-

blue 

插入数据

下面给出了在特定索引处插入列表项的语法。

linsert listname index value1 value2..valuen

下面给出在特定索引处插入列表项的示例。

#!/usr/bin/tclsh

set var {orange blue red green}
set var [linsert  $var 3 black white]
puts $var

执行以上代码后,将产生以下输出-

orange blue red black white green 

替换数据

下面给出了替换特定索引处的列表项的语法-

lreplace listname firstindex lastindex value1 value2..valuen

下面给出了替换特定索引处的列表项的示例。

#!/usr/bin/tclsh

set var {orange blue red green}
set var [lreplace $var 2 3 black white]
puts $var

执行以上代码后,将产生以下输出-

orange blue black white

索引更改值

下面给出在特定索引处设置列表项的语法-

链接:https://www.learnfk.com/article-tcl-tk/tcl_lists

来源:LearnFk无涯教程网

lset listname index value 

下面给出在特定索引处设置列表项的示例-

#!/usr/bin/tclsh

set var {orange blue red green}
lset var 0 black 
puts $var

执行以上代码后,将产生以下输出-

black blue red green 

列表转变量

将值复制到变量的语法如下-

lassign listname variable1 variable2.. variablen

下面给出了将列表转换为变量的示例-

#!/usr/bin/tclsh

set var {orange blue red green}
lassign $var colour1 colour2
puts $colour1
puts $colour2

执行以上代码后,将产生以下输出-

orange
blue 

列表排序

下面给出了对列表进行排序的语法-

lsort listname

下面是一个排序列表的例子-

#!/usr/bin/tclsh

set var {orange blue red green}
set var [lsort $var]
puts $var

执行以上代码后,将产生以下输出-

blue green orange red

这一章你学到了什么?来做个笔记,好记忆不如烂笔头! 如果觉得对您有帮助,麻烦帮分享给您的朋友。

祝学习愉快! (如果觉得不正确,选中要修改的内容->右键->编辑)

点我分享笔记