Yakha i-Iterators Yezinhlu Nge-Linux "phambili" I-Command

Uma kuhleliwe, umyalo we- foreach usebenzise i-loop lapho iziguquli ze-loop zithatha amanani ukusuka kuhlu olulodwa noma ngaphezulu. Esikhathini esilula kunazo zonke i-loop variable, i- varname , noluhlu olulodwa, uhlu , oluluhlu lwamagugu okuzokwabela i-varname . Ukuphikisana komzimba kuyiskripthi se-Tcl. Ngolunye uhlangothi lwaloluhlu (ngokulandelana ukusuka kokuqala kuya ekugcineni), isiphakamiso sinikeza okuqukethwe kwesici ukuze kuqinisekiswe ukuthi umyalo we- lindex usetshenziselwe ukukhipha isici, bese ubiza umhumushi we-Tcl ukwenza umzimba .

Isiqubulo

I- foreach varname uhlu lomzimba
U- foreach uluhlu lwamagama1 ? uhlu lwe-varlist22 ? umzimba

Ingxoxo

Kwimeko evamile, kungaba khona uhlu olungaphezulu kweyodwa (isib. Uhlu1 kanye nohlu2 ), futhi uhlu lwamanani ngamunye lungathintwa nohlu lwamanani angaguquki (isb, varlist1 ne- varlist2 ). Ngesikhathi ngasinye ukuhlaziywa kwe-loop, iziguquko zohluli ngalinye ngalinye zinikezwa amanani alandelanayo ohlwini olulandelayo . Amanani ohlwini ngalunye asetshenziswe ngokulandelana kusukela kokuqala kuya kokugcina, futhi inani ngalinye lisetshenziswe kanye kanye. Inani eliphelele le-loop iterations likhulu ngokwanele ukusebenzisa zonke izindinganiso kuzo zonke izinhlu zamanani. Uma uhlu lwamanani aluqukethe izakhi eziwanele eziguquguqukayo zazo zonke ze-loop ku-iteration ngayinye, amanani angenalutho asetshenziselwa izakhi ezingekho.

Ikhefu futhi uqhubeke nezitatimende zingenziwa ngaphakathi komzimba , nomphumela ofanayo nomyalo. I- oreach ibuyisela ucingo olungenalutho.

Izibonelo

I-loop elandelayo isebenzisa i- j ne- j njengemikhawulo ye-loop ukuze ibuyele phezu kwamabili wezingxenye zohlu olulodwa.

setha x {} phambili {ij} {abcdef} {lappend x $ j $ i} # Inani le-x liyi "badcfe" # Kunezinguquko ezintathu ze-loop.

I-loop elandelayo isebenzisa i- j ne- j ukuze ilandele ngaphezu kwezinhlu ezimbili ezifanayo.

setha x {} phambili i {abc} j {defg} {lappend x $ i $ j} # Inani le-x "i-adbecf {} g" # Kunezinguquko ezingu-4 ze-loop.

Amafomu amabili ahlangene nesibonelo esilandelayo.

setha x {} i-foreach i {abc} {jk} {defg} {lappend x $ i $ j $ k} # Inani le-x ngu- "adebfgc {} {}" # Kunezinguquko ezintathu ze-loop.

Amanothi

Imiyalo eminingana ehlobene nayo isebenza ne- foreach kuhlanganise:

Ngenxa yokuthi ukusabalaliswa kwe-Linux namazinga okukhululwa kernel ahlukahluka, sebenzisa umyalo womuntu ( % umuntu ) ukuze ubone ukuthi umyalo usetshenziswe kanjani ikakhulu kukhompyutha yakho ethile.