初识Tcl(八):Tcl 列表

news/2025/1/9 11:29:08/

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

需要注意的一个重要的事情是,列表表示为完全串并处理在需要时,形成的各个项目。所以要避免大的列表,在这种情况下,可使用数组代替。

创建一个列表

列表的一般语法如下。

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/tclshset 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/tclshset var orange
append var " " "blue"
lappend var "red" 
lappend var "green" 
puts $var

当上述代码被执行时,它会产生以下结果。

orange blue red green

列表长度

列表长度的语法如下。

llength listName

例如,列表长度如下例所示。

#!/usr/bin/tclshset var {orange blue red green}
puts [llength $var] 

当执行上面的代码,产生以下结果:

4

列表索引项

用于选择在指定索引的列表项如下。

lindex listname index

例如,列表索引项目如下所示。

#!/usr/bin/tclshset var {orange blue red green}
puts [lindex $var  1]

当执行上面的代码,产生以下结果:

blue

插入索引项目

在列表特定索引插入项目的语法如下。

linsert $listname index value1 value2..valuen

例如,在列表特定的索引插入项目如下。

#!/usr/bin/tclshset 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

例如用于替换列表项以特定的索引如下。

#!/usr/bin/tclshset var {orange blue red green}
set var [lreplace $var 2 3 black white]
puts $var

当执行上面的代码,产生以下结果:

orange blue black white

设置指定项目

用于设置列表项在特定索引下面的语法给出。

lset listname index value 

例如设置列表项的索引具体如下。

#!/usr/bin/tclshset var {orange blue red green}
lset var 0 black 
puts $var

当执行上面的代码,产生以下结果:

black blue red green

转换列表变量

复制值到变量的语法如下。

lassign listname variable1 variable2.. variablen

例如,用于将列表到变量如下。

#!/usr/bin/tclshset var {orange blue red green}
lassign $var colour1 colour2
puts $colour1
puts $colour2

当执行上面的代码,产生以下结果:

orange
blue

排序列表

排序列表的语法如下。

lsort listname

进行列表的排序如下例子。

#!/usr/bin/tclshset var {orange blue red green}
set var [lsort $var]
puts $var

当执行上面的代码,产生以下结果:

blue green orange red

http://www.ppmy.cn/news/297016.html

相关文章

TCL电视无法开机,如何强制黑屏刷机教程分享

本电视刷机教程转载自奇趣刷机网-https://www.77itv.com/74.html 如何升级TCL智能电视?我们电视用户通过升级的目的是什么?** 一般情况下,一款电视都有几个版本的刷机固件,厂家可以通过升级电视固件来优化用户体验或者修复BUG&a…

TCL学习

欢迎关注个人公众号摸鱼范式 什么是TCL? TCL,Tool Command Language,是一种脚本语言,主流的EDA工具都支持TCL进行操作。TCL经常被用于 快速原型开发,脚本编程, GUI和测试等方面。 TCL学习 接下来以一个实际…

tcl电视显示服务器异常1500,TCL电视机使用常见故障及维修方法

TCL电视机使用常见故障及维修方法 电视用的时间久了难免会出现一些小故障,但是哪些故障是自己可以搞定的,而哪些故障又是必须要找专业师傅去维修呢,要做这个判断并不难,了解一些电视故障常识即可,今天小编就收集了一些资料一起来看看吧。 一、TCL电视机使用常见故障 TCL电…

Tcl的历史

Tcl的历史  人们常常问我设计Tcl语言的目的是什么,为什么它会变得这么受欢迎。本文将重温一下当年产生设计Tcl和Tk的想法,回顾Tcl和Tk在过去十年间发展的过程,以及我从伯克利到sun到scriptics的人生经历。你将看到,起初Tcl是很简…

TCL简介

Abstract: 1, 用户新建命令: Tcl_CreateCommand 2,赋值: set a 100 3,其余基本同shell TCL简介系列: 之一:http://www.tclchina.com/article/chinese/jianjie1.htm 之二:http://blog.csdn.net/classwang/archive/2009/02/21/…

王牌电视显示墙服务器,TCL王牌电视机总线进入方法大全

编号: 255 品牌: TCL 型号: dlp61v6p CPU型号: oem 参数: 待机状态下,同时按住"音量减"和"节目减"键8秒. 备注: 号: 157 品牌: TCL 型号: 2910G, 2910D, 2910DZ, 2911, 2911D, 2911DI, 2911Z, 2911DZ, 2913D, 2915DZ, 2916D, 2927D, 2956D, 2965D, 2975, 2…

android电视手机遥控器,tcl电视遥控器

tcl电视遥控器手机版是一款非常灵活的电视遥控应用。tcl电视遥控器app的主要功能是通过手机控制电视的开关等。有了tcl电视遥控器,你再也不用怕遥控不见啦! 软件介绍 tcl电视遥控器手机版为用户带来手机遥控电视的效果,电视机的遥控发射器只要…

详解python排序的5种高级用法

来源:投稿 作者:Fairy 编辑:学姐 排序是编程中常用的操作之一。Python提供了多种排序方法,可以适用于不同的排序需求。 那么,今天我们将介绍Python中常用的 5 种列表排序方法。 「1.使用sorted()函数和lambda表达式」…