Programozáskor aaz egyes parancs végrehajt egy hurkot, ahol a hurokváltozók egy vagy több listából értékeket fogadnak el. A legegyszerűbb esetben van egy hurokváltozó, varname , és egy listát, lista , azaz a hozzárendelni kívánt értékek listája varname . A test argumentum egy Tcl parancsfájl. Minden egyes elemnek lista (az elsőtől a végéig),az egyes hozzárendeli az elem tartalmát varname mintha aLindexparancsot használták az elem kivonására, majd a Tcl értelmezőt végrehajtja test .
Szinopszis
az egyes varname lista test
az egyes varlist1 list1 ? varlist2 lista2 … ? test
Vita
Általános esetben egynél több értéklista lehet (pl. list1 és list2 ), és minden értéklista társítható a loop változók listájához (például, varlist1 és varlist2 ). A hurok minden egyes iterációja során minden változó varlist hozzárendelnek egymás után a megfelelő értékeket lista . Értékek mindegyikben lista az elsőtől az utolsóig használják, és minden értéket pontosan egyszer használnak. A hurok iterációinak teljes száma elég nagy ahhoz, hogy minden értéklista felhasználható legyen. Ha egy értéklista nem tartalmaz elegendő elemet minden egyes ciklusváltozóhoz, akkor az üres értékeket kell használni a hiányzó elemekhez.
Aszünet ésFolytatni kijelentéseket lehet behívni benne test , ugyanolyan hatással, mint a mert parancs. Az foreach üres karakterláncot ad vissza.
Példák
A következő hurok használja én és j mint ciklusváltozókat, hogy egy lista egyetlen elemének párbeszédén keresztül iterálódjanak.
set x {} foreach {i j} {a b c d e f} {lappend x $ j $ i} # Az x értéke "b a d c f e" # A hurok három iterációja létezik.
A következő hurok használja én és j párhuzamosan két listán keresztül.
set x {} foreach i {a b c} j {d e f g} {lappend x $ i $ j} # Az x értéke "a d b e c f {} g" # A ciklusnak 4 iterációja van.
A két formát a következő példában kombináljuk.
állítsd be x {} foreach i {a b c} {j k} {d e f g} {lappend x $ i $ j $ k} # Az x értéke "a d e bfg c {} {}" # A huroknak 3 iterációja van.
Megjegyzések
Több kapcsolódó parancs is működikaz egyes beleértve:
- A (n)
- míg (n)
- szünet (n)
- továbbra (n)
Mivel a Linux disztribúció és a rendszermag-kiadás szintje változik, használja a Férfi parancs ( % Férfi ) annak megtekintéséhez, hogy a parancsot kifejezetten az adott számítógépen használják.