list - 如何从tcl列表中删除空元素

标签 list null tcl

你好
我有以下 list

% set qprList {{{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} 12345 {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} 12345 {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} 12345 {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} 12345 {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}} {{}}}



我想删除所有空的元素。由于列表列表是我无法在单循环交互中完成的。

任何简单的方法来实现这一目标?

最佳答案

该列表中没有空元素。那些看起来空的可以被认为是 (a) 一个字符串 "{}"或 (b) 一个包含一个元素的列表,它是一个空字符串或一个空列表。

package require struct::list
set non_empty [struct::list filter \
                 [struct::list flatten $qprList] \
                 {apply {{x} {expr {[string length $x] > 0}}}} \
              ]

关于list - 如何从tcl列表中删除空元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5259294/

相关文章:

list - Julia 中是否有 if-else 列表推导式

在列表元素内复制以制作嵌套列表

list - ghci 如何为类型变量选择名称?

c# - 按日期排序子节点 - Razor Umbraco

java - 使用闭包在 Groovy 中检查列表成员的字段是否为 null

null - Kotlin 如果不为空

regex - TCL 将文本字符串拆分为多个变量(eggdrop)

Swift UIImage Named 在 UITableViewController 中为零

tcl - itcl配置方法: How to use public variables with a config script?

tcl - Expect:如何将衍生进程的每个输出打印给用户