TCL的列表操作

news/2024/10/17 12:34:38/

concat

concat  列表A  列表B

lrepeat

lrepeat  重复次数  列表A

lindex

lindex  列表A  元素索引

 lrange

lrange  列表A  元素索引a  元素索引b

llength

length  列表A

lassign

lassign  列表A  元素索引a  元素索引b

lappend

lappend  列表A  增加的元素

linsert

linsert  列表A  元素索引a

lreplace

lreplace  列表A  元素索引a  替换元素

lset

lset  列表A  元素索引  替换元素

lsearch

lsearch(-all –inline –not) 列表A  元素

lsort

lsort  列表A

split

split  列表A  分隔符

join

join  列表A  分隔符

#!/usr/bin/tclsh #### concat 连接 
set zimu [list a b c d];
set mun  [list 1 2 3 4];
set and  [concat $zimu $mun];
puts $and ;concat $mun $zimu;
puts $mun;#### lrepeat  重复 
set a [list 7 8 9 10];
set b [lrepeat 4 $a];
set bb [lrepeat 4 7 8 9 10];
puts $b;
puts $bb;
#### lindex & llength & lrange   下标查元素  长度   范围截取  set c [list 4 5 6 7];
puts [llength $c];
puts $c;
set d   [llength $c]-1;
puts $d;
set dd [lindex $c 0]
puts [lindex $c 0]
puts $dd;
set ddd [lindex $c end];puts $ddd-1;set u {a {a {d c}} e}
set uu [lindex $u 1 1 1];
puts $uu;set ra [lrange $u 1 2];
puts $ra;### lassign 重新分配lassign $ra o p;puts $o;
puts $pset ooo [lassign $u oo]
puts $ooo
set ooo [lassign $u oo pp]
puts $oooset ooo [lassign $u oo pp qq]
puts $ooo ###lappend  &&  linsert  增加  插入  
set num [list 1 2 3 4 5]
lappend num 1 2 {3 4 5}
puts [lappend num 1 2 {3 4 5}]
puts $numset num1 [linsert $num 0 insert]
puts $num1 set num2 [linsert $num1 end 6]
puts $num2 set num3 [linsert $num2 999 7]
puts $num3 ##### lreplace  替代set num4 [lreplace $num3  0 0]
puts [lreplace $num 0 0]
puts $num4 set num5 [lreplace $num4 0  0]
puts $num5 set num6 [lreplace $num5 end  end]
puts $num6 set num7 [lreplace $num6 end  end 666]
puts $num7 
set num7 [lreplace $num7 end  end 777]
puts $num7 #### lset  直接对原列表发生改变  
lset num7 end 888
puts $num7 set lll [lset num7 {6 2} 777]
puts $lll  #######lserach  查询 
set se [list b1 b2 b3 b4 b5 n1 n2 n3 n4]set one [lsearch $se b1]
puts $one  
####  输出的是索引下标
set tw [lsearch  $se b6]
puts $tw  
set thr [lsearch -all -inline $se b*]
puts $thr  set four [lsearch $se {b[2 3]}]
puts $four 
#set five [lsearch -all $se b[123]]
#puts $five  
set sev [lsearch -all -inline -not $se {b[3 5]}]
puts $sev  
set six [lsearch -all $se b*]
puts $six  #####lsort   排序set word [list a o p d k]
set drow [lsort $word]
puts $word puts $drow
set num [list 8 2 5 3 7 6]
set mun [lsort -integer $num]
puts $numputs $munset M [list {w 10} {a 8} {p 9}]
set N [lsort -index 0 $M]
set N2 [lsort -integer -index 1 $M]
puts $N
puts $N2######## split &&  join  && in   
#隔开 
#合并
#是否存在set yy asdfghj
set y2 [split $yy sfh]
puts $y2 set y3 [llength [split $yy aj]]
puts $y3 set qqq [list 1 2 3 4 5]
set q1 [join $qqq {}]set q2 [join $qqq /]
set q3 [join $qqq \n]puts $q1 
puts $q2 
puts $q3 set aaa a 
set bbb b 
set y4 [expr {$aaa in $y2}]
puts $y4 
set y5 [expr {$bbb in  $y2}]
puts $y5 #######  foreach  set  test [list 1 e 2 r 3 t 4 y 5 w]
set  test2 {11 22 33 44 55}
puts $test
foreach {m n} $test {set mm [expr {$m+100}]puts "$mm $n"
}
puts $mmforeach {tes1 tes} $test tes2 $test2 {set   tes3 [expr {$tes1+100}]puts "$tes3 $tes $tes2"
}


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

相关文章

Sentinel怎么使用和控制台讲解

Sentinel 基础 官网 1 Github: https://github.com/alibaba/Sentinel 2 快速开始: https://sentinelguard.io/zh-cn/docs/quick-start.html 3 中文: https://github.com/alibaba/Sentinel/wiki/介绍 4 使用手册: https://spring-cloud-alibaba-group.github.io/github-pag…

Tcl -- lappend

1)lappend - Append list elements onto a list. 在列表(变量)后添加列表元素。 2)语法: lappend varName ?value value value ...? 注意:是varname变量名(列表名),不是list。追加的元素之间用空格隔开…

TCL 教程

TCL 常常被称为工具命令语言 (Tool Command Language)。TCL 简单易学,功能强大。本教程主要针对使用数字 IC 设计工具而涉及 TCL 使用的开发人员。 第一章:TCL 教程 1.1 TCL 教程 1.2 TCL 简介 1.3 TCL 环境搭建 第二章:TCL 语法 2.1 TCL 基…

TCL

第一部分:TCL基本知识 一.简介 Tcl 表示工具命令语言(Tool Command Language),它是一种流行的脚本编制语言,最初由加州大学伯克利分校的 John Ousterhout 教授开发。John Ousterhout 打算将 Tcl 作为一种将其它程序组件粘合在一起…

tcl proc

原文链接:https://bbs.eetop.cn/thread-918745-1-1.html 作者:489315174 define_proc_attributes和parse_proc_arguments命令能够扩展tcl语言中proc的功能,创建和Synopsys命令一样具有help和属性的命令。 创建一个新的proc时,它具…

【资料分享】RS-485 串行接口说明

面对大量可用的串行接口,可能很难理解它们之间的差异以及何时使用它们。正如我最喜欢的工程学教授经常说的那样,“标准的美妙之处在于有很多标准可供选择。” 今天的编码器比以往任何时候都更智能、更先进,要求工程师放弃更简单的正交增量传感…

SQL——视图检查选项 local

create table stue ( id int auto_increment primary key comment 客户编号, name varchar(20) comment 客户名称, mima varchar(100) comment客户密码 , phonr varchar(20) comment 客户电话, xb char(2) …

“灵巧小工具”一个将图片处理成打印纸尺寸的丰富功能完全免费无水印的图片处理工具

今天推荐一款微信小程序“灵巧小工具”,经常有打印图片需求的用户赶紧收藏了。 可以先扫码体验一番: 下面介绍一下它的主要功能: 1.照片(1寸、2寸、5寸、6寸) 支持1寸,2寸照片自动排版,生成相纸…