Programuojant,kiekvienam komanda įgyvendina kilpą, kur loos kintamieji prisiima vertes iš vieno ar daugiau sąrašų. Paprasčiausiu atveju yra vienas kilpos kintamasis, varname , ir vienas sąrašas sąrašas , tai yra verčių, kurias priskirti, sąrašas varname . The kūnas argumentas yra Tcl scenarijus. Dėl kiekvieno elemento sąrašas (nuo pirmojo iki paskutinio)kiekvienam priskiria elemento turinį į varname kaip tarsilindexkomanda buvo naudojama išgauti elementą, tada ragina Tcl interpretatorius vykdyti kūnas .
Anotacija
kiekvienam varname sąrašo kūnas
kiekvienam varlist1 sąrašas1 ? varlist2 list2 … ? kūnas
Diskusija
Paprastai gali būti daugiau nei vienas vertės sąrašas (pvz., list1 ir sąrašas2 ), o kiekvienas vertės sąrašas gali būti susietas su ciklo kintamųjų sąrašu (pvz., varlist1 ir varlist2 ) Kiekvienos ciklo iteracijos metu kiekvieno kintamieji varlist priskiriamos atitinkamos vertės iš eilės sąrašas . Vertės kiekvienoje sąrašas yra naudojami nuo pirmojo iki paskutinio, o kiekviena vertė naudojama tik vieną kartą. Bendras ciklo iteracijų skaičius yra pakankamai didelis, kad panaudotų visas vertes iš visų vertės sąrašų. Jei vertybių sąraše nėra kiekvieno iteracinio kintamojo elementų pakankamai elementų, trūkstamiems elementams naudojamos tuščios reikšmės.
Thepertrauka irTęsti teiginiai gali būti naudojami viduje kūnas , turintis tokį patį poveikį kaip ir dėl komanda Foreach grąžina tuščią eilutę.
Pavyzdžiai
Naudojamas šis ciklas i ir j kaip kilpos kintamieji, kad būtų galima kartoti per vienos sąrašo elementų poras.
nustatykite x {} foreach {i j} {a b c d e f} {lappend x $ j $ i} # x reikšmė yra "b a d c f e" # Yra 3 ciklo kartojimai.
Kitas kilpas naudojamas i ir j lygiagrečiai pakartoti du sąrašus.
Nustatykite x () už tai, kad aš (a b c) j (d e f g) (lappend x $ i $ j) # x reikšmė yra "a d b e c f {} g" # Yra 4 pakartojimo iteracijos.
Dvi formos yra sujungtos kitame pavyzdyje.
Nustatykite x () po to, kai i (a b c) (j k) (d e f g) (lappend x $ i $ j $ k) # x vertė yra "a d e b f g c () {}" # Yra 3 pakartojimo iteracijos.
Pastabos
Su ja dirba keletas susijusių komandųkiekvienam įskaitant:
- už (n)
- o (n)
- pertrauka (n)
- tęsti (n)
Kadangi Linux platinimo ir branduolio paleidimo lygiai skiriasi, naudokite vyras komanda ( % vyras ), kad pamatytumėte, kaip komanda konkrečiai naudojama jūsų konkrečiame kompiuteryje.












