सूची सूची Iterators लिनक्स "foreach" को साथ आदेश

जब प्रोग्रामिंग , माईच आदेश ले पाश लागू गर्दछ जहाँ लूप चर एक मान को एक या अधिक सूची देखि मानिन्छ। सरलतम मामला मा एक पाश चर, varname , र एक सूची छ, सूची , यो varname को असाइन गर्न को लागि मानहरूको सूची हो। शरीर तर्क एक Tcl स्क्रिप्ट हो। प्रत्येक तत्वको सूचीको लागि (पहिले देखि अन्तिम सम्म), foreach ले तत्वको सामग्रीहरू varname लाई असाइन गर्दछ यदि lindex कमाण्ड तत्व निकाल्न प्रयोग भएको थियो, त्यसपछि Tcl दुभाषकलाई शरीर कार्यान्वयन गर्न भन्छ।

सारांश

foreach varname सूची शरीर
foreach varlist1 list1 ? varlist2 list2 ... ? जीउ

छलफल

सामान्यतया, त्यहाँ एक भन्दा बढी मान सूची हुन सक्छ (उदाहरणका लागि, सूची 1 र सूची 2 ), र प्रत्येक मान सूची लूप चरको सूचीसँग सम्बन्धित हुन सक्छ (जस्तै, varlist1varlist2 )। लूपको प्रत्येक पुनरावृद्धिको बेला, प्रत्येक varlist को चरहरू क्रमबद्ध सूचीबाट लगातार मानहरू नियुक्त गरिएका छन्। प्रत्येक सूचीमा मानहरू पहिले देखि अन्तिममा प्रयोग गरिन्छ, र प्रत्येक मान एकैचोटि प्रयोग गरिन्छ। पाश पुनरावृत्तहरूको कुल संख्या सबै मान सूचीबाट सबै मानहरू प्रयोग गर्न पर्याप्त हुन्छ। यदि मान सूचीमा प्रत्येक पुनरावृत्तिमा यसको प्रत्येक पाश चरको लागि पर्याप्त तत्वहरू समावेश छैन भने, हरा मानहरू छुटेको तत्वहरूको लागि प्रयोग गरिन्छ।

ब्रेकजारी जारी विवरण शरीर भित्र एकै प्रभावको साथ शरीर भित्र बोल्न सकिन्छ। F oreach खाली स्ट्रिङ फर्काउँछ।

उदाहरणहरु

निम्न लूपले IJ को प्रयोग गर्दछ loop चरहरू एक एकल सूचीका तत्वहरूको जोडीलाई पुन: उत्पन्न गर्न।

सेट x {} foreach {ij} {abcdef} {lappend x $ j $ i} # x को मान "badcfe" # पाशको 3 पुनरावलोकनहरू छन्।

अर्को लूपले Ij लाई समानांतरमा दुई सूचिहरू बढाव गर्न प्रयोग गर्दछ।

सेट x {} foreach i {abc} j {defg} {lappend x $ i $ j} # x को मान "adbecf {} g" # हो पाशको 4 पुनरावलोकनहरू।

दुई फारामहरू निम्न उदाहरणमा संयुक्त छन्।

सेट x {} foreach मा {abc} {jk} {defg} {lappend x $ i $ j $ k} # x को मान "adebfgc {} {}" # loop को 3 पुनरावलोकन हो।

टिप्पणीहरू

धेरै सम्बन्धित आदेशहरू माईच सहितका कामहरू समावेश छन्:

किनकि लिनक्स वितरण र कर्नेल-रिलीज स्तर फरक हुन्छ, मानिस आदेश ( % मानिस ) प्रयोग गर्नुहोस् तपाईको विशेष कम्प्युटरमा आदेश कसरी विशेष रूपमा प्रयोग गरिन्छ।