У меня есть три списка, которые я хотел бы перебрать, чтобы я оценивал каждую перестановку переменных в моих списках.В настоящее время у меня есть цикл for
с двумя вложенными циклами for
, но мне интересно, смогу ли я добиться того же с foreach
?Однако я не могу понять синтаксис foreach
.(Возможно, потому что я не совсем понимаю, как / когда использовать foreach
).
Вот мой текущий блок кода.Можно ли написать это как foreach
?
set list1 {a b c}
set list2 {red blue green}
set list3 {dogs cats chickens}
for {set i 0} {$i < [llength $list1]} {incr i} {
for {set j 0} {$j < [llength $list2]} {incr j} {
for {set k 0} {$k < [llength $list3]} {incr k} {
set alpha [lindex $list1 $i]
set color [lindex $list2 $j]
set animal [lindex $list3 $k]
puts "$alpha $color $animal"
}
}
}