2014-08-29 92 views
1
foreach old_cellname $old_cell_full_name { 
echo $old_cellname >> origin.txt} 
foreach origin $cell_origin { 
echo $origin >> origin.txt} 
foreach new_cellname $new_cell_full_name { 
echo $new_cellname >> origin.txt} 

使用上面的代码我能够得到origin.txt中的输出作为旧的单元格名称,后跟它们的原始编号,然后是新的单元格名称。但我希望我的输出作为行,即旧的单元名称的起源和新的单元名称。是否有可能做出这些改变?任何帮助,高度赞赏。巩固foreach命令

回答

3

如果列表长度相同并且明智地匹配,当然可以。只需使用一个多列表foreach

foreach old $old_cell_full_name origin $cell_origin new $new_cell_full_name { 
    # echo isn't a standard Tcl command, but I guess this ought to work 
    echo "$old\t$origin\t$new" >> origin.txt 
} 

我假设制表符分隔就行了。这非常方便,因为它可以让您轻松地将数据导入电子表格。如果您喜欢逗号,请使用,而不是\t

+1

如果列表不匹配,您可能会得到乱码。 ;-) – 2014-08-29 21:55:52

+0

列表长度相同..它的工作..非常感谢:) – Roger 2014-08-29 22:08:45

+0

@Roger,请阅读http://stackoverflow.com/help/someone-answers – 2014-08-30 17:00:51