创建矩阵前2列的tcl列表
我有10行10列的矩阵。我想用板条箱包装tcl列表,其中列表中的每个元素都是2个数字,每行1个。 e、 如果我的矩阵是创建矩阵前2列的tcl列表,tcl,Tcl,我有10行10列的矩阵。我想用板条箱包装tcl列表,其中列表中的每个元素都是2个数字,每行1个。 e、 如果我的矩阵是 $a $b $c $d $e $f $g $h $i $j $k $l $m $n $o $p $q $r $s $t 我想要一个包含元素的列表$a$b,$f$g,$k$l,$p$q。 有人能告诉我怎么做吗?假设您的矩阵是一个列表列表,您可以使用: 假设您的矩阵是一个列表列表,您可以使用: 如果您使用的是Tcllib中定义的矩阵,请执行以下操作: set pa
$a $b $c $d $e
$f $g $h $i $j
$k $l $m $n $o
$p $q $r $s $t
我想要一个包含元素的列表$a$b
,$f$g
,$k$l
,$p$q
。
有人能告诉我怎么做吗?假设您的矩阵是一个列表列表,您可以使用:
假设您的矩阵是一个列表列表,您可以使用:
如果您使用的是Tcllib中定义的矩阵,请执行以下操作:
set pairlist [$matrix get rect 0 0 1 end]
注意:矩阵的名称在
matrix
变量中,rect
是“矩形”的缩写,0
给出要提取的矩形左上角矩阵中的坐标,1 end
给出矩形右下角矩阵中的坐标(矩阵支持end
表示最后一行和/或列,就像Tcl字符串和列表一样)。如果您使用的是由in-Tcllib定义的矩阵,请执行以下操作:
set pairlist [$matrix get rect 0 0 1 end]
注意:矩阵的名称在matrix
变量中,rect
是“矩形”的缩写,0
给出要提取的矩形左上角矩阵中的坐标,1 end
给出矩形右下角矩阵中的坐标(矩阵支持end
表示最后一行和/或列,就像Tcl字符串和列表一样)
这应该会产生结果
这应该会产生结果你以前创建过Tcl列表吗?听起来你想要的是一个包含列表的列表。这是可能的。但是你到目前为止尝试了什么?你以前创建过Tcl列表吗?听起来你想要的是一个包含列表的列表。这是可能的。但是你到目前为止尝试了什么?嗨,格伦,我有tcl8.4。那么不支持lmap。请复制此页中的第二个代码段:。将其放入您的程序中,您就有了
lmap
。此外,如果可能,请升级,Tcl 8.4已过时。您好,Glenn,我有tcl8.4。因此不支持lmap。请复制此页中的第二个代码段:。将其放入您的程序中,您就有了lmap
。如果可能,请升级,Tcl 8.4已过时。
package require struct::matrix
struct::matrix data
data add columns 5
data add rows 4
data set rect 0 0 {
{a b c d e}
{f g h i j}
{k l m n o}
{p q r s t}
}
data get rect 0 0 1 end
# {a b} {f g} {k l} {p q}