Tcl:如何将多个变量附加到一行,它们之间有 space?

Tcl: How to append multiple variables to a single line with a space between them?

下面代码,append可以将所有文件路径添加到一行,但是它们之间没有space。
如何在每个路径之间添加一个space?

set all_path ""

foreach line $lines {
   set filepath [proc_get_file_path $line]
   ...
   #some commands
   ...
   append ::all_path $filepath
}

预期输出:

../path/a ../path/b ../path/c ...

您想稍后如何使用 all_path

从远处看,这是您要使用 Tcl 列表的地方:

set all_path [list]

foreach line $lines {
   set filepath [proc_get_file_path $line]
   # ...
   lappend all_path $filepath
}

Tcl 列表的字符串表示形式也符合您对空白定界符的期望。您也可以手动 assemble 这样的字符串,append 显式引入一个空格:append all_path " " $filepath。但也许,这不是你想要的开始......