Provided by: manpages-zh_1.6.3.6-1_all bug

NAME

       foreach - 在一个或多个列表的所有元素上重复

总览 SYNOPSIS

       foreach varname list body
       foreach varlist1 list1 ?varlist2 list2 ...? body
_________________________________________________________________

描述 DESCRIPTION

       foreach 命令实现一个循环,在这里循环变量从一个或多个列表接受值。在最简单的情况下,这里有一
       个循环变量 varname  ,和一个列表 list,它是要赋给 varname  的值的一个列表。body   参数是一
       个  Tcl 脚本。对于 list   的每个元素(按从最先到最后的次序),foreach   把这个元素的内容赋给
       varname,如同使用 lindex   命令提取元素一样,接着调用 Tcl 解释器来执行 body。

       在一般的情况下,这里可以有多于一个的值列表(例如,list1list2),并且每个值列表可以与一个
       循环变量的列表相关联。(例如,varlist1varlist2)。 在循环的每次重复期间每个 varlist 中的
       变量被赋与相应的list 中的连续的值。在每 个list  中的值按从最先到最后的次序被使用,并且每个
       值被准确的使用一次。循环重复的总数足够的大来用光所有列表的所有的值。如果一个值的列表不包含
       足够元素,供给每次重复中的每个循环变量,则给遗漏的元素使用空值。

       breakcontinue  语句可以在 body 中调用,与在 for 命令中有相同的效果。Foreach  返回一个
       空串。

范例 EXAMPLES

       下面的循环使用  i  和 j 作为循环变量在一个单一的列表的一对元素上重复。 set x {} foreach {i
       j} {a b c d e f} {
           lappend x $j $i } # The value of x is "b a d c f e" # There are 3  iterations  of  the
       loop.

       下一个循环使用 i 和 j 在两个并行的列表上重复。 set x {} foreach i {a b c} j {d e f g} {
           lappend  x  $i $j } # The value of x is "a d b e c f {} g" # There are 4 iterations of
       the loop.

       在下面例子中组合了两种形式。 set x {} foreach i {a b c} {j k} {d e f g} {
           lappend x $i $j $k } # The value of x is "a d e  b  f  g  c  {}  {}"  #  There  are  3
       iterations of the loop.

参见 SEE ALSO

       for(n), while(n), break(n), continue(n)

关键字 KEYWORDS

       foreach, iteration, list, looping

[中文版维护人]

       寒蝉退士

[中文版最新更新]

       2001/08/05

《中国 Linux 论坛 man 手册页翻译计划》:

       http://cmpp.linuxforum.net

       本页面中文版由中文 man 手册页计划提供。
       中文 man 手册页计划:https://github.com/man-pages-zh/manpages-zh