Բովանդակություն:
- Պարագաներ
- Քայլ 1: Սահմանեք գործառույթը
- Քայլ 2: Սկսեք դատարկ ցուցակ
- Քայլ 3: Տեղադրեք փոփոխականի «ինդեքս» 0 -ի համարին
- Քայլ 4. Սկսեք Loop- ի հայտարարությունը
- Քայլ 5: Ավելացնել հավելվածի մեթոդ
- Քայլ 6. Տեղադրեք մաթեմատիկայի արտահայտությունը հավելվածի ներսում
- Քայլ 7: Բարձրացրեք «ինդեքսի» փոփոխականը 1 -ով
- Քայլ 8: Ավելացրեք վերադարձի հայտարարություն
- Քայլ 9. Փորձարկեք while loop գործառույթը
Video: Ինչպես ստեղծել միաժամանակյա օղակ Python- ում. 9 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:46
Mingրագրավորման մեջ կան պահեր, երբ խնդիրը լուծելու համար անհրաժեշտ է կրկնել մի շարք քայլեր: A while loop- ը թույլ է տալիս շրջանցել կոդի մի հատվածը ՝ առանց կրկնվող կոդ գրելու: Mingրագրավորում կատարելիս միևնույն կոդն անընդհատ գրելը համարվում է վատ պրակտիկա: Դուք պետք է խուսափեք կրկնվող կոդերից ՝ ձեր ծրագիրը հակիրճ պահելու, ինչպես նաև այլ ծրագրավորողների համար ձեր կոդը կարդալն ու մեկնաբանելը դյուրացնելու համար:
A while loop- ը հիանալի գործիք է, որը թույլ է տալիս արդյունավետ կերպով շրջանցել մի շարք քայլեր ծրագրավորման ժամանակ ՝ միաժամանակ մաքուր և հակիրճ պահելով ձեր ծածկագիրը: Ստորև բերված քայլերը ցույց կտան ձեզ, թե ինչպես ստեղծել մի շարք օղակ Python- ում ՝ ցանկը շրջանցելու համար: Այս վարժությունը նախատեսված է սկսնակների համար, ովքեր որոշակի գիտելիքներ ունեն զանգվածների վերաբերյալ, որոնք Python- ում կոչվում են «ցուցակներ»: Այս 15 րոպեանոց վարժության համար մենք շրջանցում ենք թվերի ցուցակը և յուրաքանչյուր թվի արժեքը ավելացնում հինգով: Օրինակ, եթե ցուցակում կան թվեր [1, 2, 4, 7], ապա օղակը կստանա թվեր [6, 7, 9, 12] պարունակող նոր ցուցակ:
Պարագաներ
Python 3 (ներբեռնելու համար կտտացրեք հղմանը)
Քայլ 1: Սահմանեք գործառույթը
Առաջին քայլը ֆունկցիայի սահմանումն է պարամետրով, որը վերցնում է ցուցակը: Ստորև բերված օրինակում ստեղծվում է addFive կոչվող գործառույթ, որին տրվում է lst պարամետրը (ցուցակ կարճ): Համոզված եղեք, որ սահմանված գործառույթի հայտարարության վերջում ավելացնեք երկու կետ:
def addFive (lst):
Քայլ 2: Սկսեք դատարկ ցուցակ
Հաջորդը, մենք պետք է նախաձեռնենք դատարկ ցուցակ, որը մենք կօգտագործենք ՝ ստեղծելու նոր ցուցակ, որը կունենա թվերի ավելացված արժեքներ [6, 7, 9, 12], երբ գործառույթը գործարկվի: Արժեքները նոր ցուցակում դնելը թույլ կտա անփոփոխ պահել սկզբնական ցուցակը:
Ստորև բերված օրինակում nlst փոփոխականով ստեղծվում է նոր ցուցակ, այնուհետև փակագծեր մուտքագրելով ՝ հավասարվում է դատարկ ցուցակին: Համոզվեք, որ նշեք փոփոխականը:
def addFive (lst):
nlst =
Քայլ 3: Տեղադրեք փոփոխականի «ինդեքս» 0 -ի համարին
Մենք պետք է սահմանենք փոփոխական ինդեքս, որը հավասար է 0. թվին: Seeուցանիշ փոփոխականի կարգավորման համար տե՛ս ստորև բերված օրինակը:
def addFive (lst):
nlst = ցուցանիշ = 0
Քայլ 4. Սկսեք Loop- ի հայտարարությունը
Հաջորդը, մենք կսկսենք մեր while օղակը `ստորև բերված օրինակում համապատասխան պայմանական հայտարարություն գրելով: Օղակի համար մեր քայլերը կգրենք հաջորդիվ ՝ օղակի սկզբնական հայտարարությունը ստեղծելուց հետո: Համոզվեք, որ ներառեք փոքր կետեր while loop պայմանական հայտարարության վերջում:
def addFive (lst):
nlst = index = 0 մինչդեռ ինդեքս <len (lst):
Եկեք բաժանենք այս պայմանական հայտարարությունը: Հայտարարության մեջ ասվում է. «Մինչդեռ ինդեքսը փոքր է ցուցակի երկարությունից:. … » Theանկի երկարությունը [1, 2, 4, 7] հավասար է 4 -ի, քանի որ ցանկում կա 4 թվային տարր: Քանի որ ցուցակի ինդեքսը սկսվում է 0 թվից, վերջին ցուցանիշը միշտ կլինի ցուցակի երկարությունը մինուս 1. մեր ցուցակի օրինակում [1, 2, 4, 7], ցուցակի վերջին ինդեքսը հավասար է 4 - 1 -ի:, որը հավասար է 3. Հետևաբար, ցուցանիշ 3 -ը ցուցակի վերջին ցուցանիշն է:
Տե՛ս վերևի աղյուսակը `ցուցակի տարրերի հետ համընկնելու օրինակի համար: 0ուցանիշ 0 -ում պահվում է 1 -ը, 1 -ինը ՝ 2 -ը, 2 -ը ՝ 4 -ը, իսկ 3 -ը ՝ 7 -ը:
Մենք կարող ենք տեսնել վերևի գծապատկերում, թե ինչպես է ցուցանիշ 3 -ը ցուցակի վերջին ցուցանիշն է: Քանի որ ինդեքս 3 -ը ցուցակի վերջին ինդեքսն է, այժմ մենք գիտենք, որ ինդեքս 3 -ը վերջին ցուցանիշն է, որը պետք է ավելանա 5 -ով ՝ մինչդեռ ժամանակաշրջանը ավարտելը: Հետևաբար, մենք while loop- ի պայմանական հայտարարությունը դնում ենք օղակ պահել, մինչդեռ փոփոխական ինդեքսը փոքր է ցուցակի երկարությունից (4), քանի որ 3 թիվը մեկից փոքր է 4 -ից:
Քայլ 5: Ավելացնել հավելվածի մեթոդ
Այժմ ժամանակն է ստեղծել հանգույցի մարմինը: Մարմնի քայլերի համար մտածեք, թե ինչ անել միայն առաջին ցուցանիշի համար: Մեր while օղակը կլուծի մնացած ինդեքսների քայլերը: [Անկի առաջին ինդեքսում (ինդեքս 0) [1, 2, 4, 7], մենք ցանկանում ենք վերցնել 1 թիվը և դրան ավելացնել 5, այնուհետև նոր թիվը ավելացնել nlst դատարկ ցուցակում:
Որպեսզի տարրը ավելացնենք դատարկ ցուցակին, մենք պետք է տարրը կցենք ցուցակին ՝ օգտագործելով հավելման մեթոդը: Հավելվածի մեթոդը օգտագործելու համար մենք գրում ենք nlst.append (), ինչպես ցույց է տրված ստորև բերված օրինակում ՝ համոզվելով, որ փակագծերը տեղադրում են մեթոդի կանչի վերջում: Այնուհետև փակագծի ներսում մենք ավելացնում ենք ծածկագիր, որը կիրականացնի ընթացիկ թվի տարրին գումարած 5 (այսինքն ՝ 1 + 5 = 6):
def addFive (lst):
nlst = index = 0 մինչդեռ ինդեքս <len (lst): nlst.append ()
Քայլ 6. Տեղադրեք մաթեմատիկայի արտահայտությունը հավելվածի ներսում
Ընթացիկ թվային տարրը ստանալու համար մենք մուտք ենք գործում ցուցակի տարր ՝ օգտագործելով դրա ցուցիչը հետևյալ կերպ.
lst [0] = 1
lst [1] = 2
lst [2] = 4
lst [3] = 7
Այսպիսով, օղակի ընթացքում ցուցակի առաջին տարր մուտք գործելու համար ծածկագիրը կլինի lst [ինդեքս], քանի որ սկզբում մենք փոփոխականի ինդեքսը սահմանում ենք 0: Տարրին 5 ավելացնելու համար մենք լրացում ենք կատարում `գրելով lst [ինդեքս] + 5. Առաջին ինդեքսի համար (ինդեքս 0) սա կտա 1 + 5, որը հավասար է 6 -ի:
Այժմ, երբ մենք հաշվարկել ենք 6 -րդ նոր տարրը, մենք պետք է այս թիվը տեղադրենք դատարկ ցուցակի մեջ nlst ՝ դրան կցելով այս ցուցակը: Կոդի համար տես ստորև բերված օրինակը:
def addFive (lst):
nlst = index = 0 մինչդեռ ինդեքս <len (lst): nlst.append (lst [index] + 5)
Քայլ 7: Բարձրացրեք «ինդեքսի» փոփոխականը 1 -ով
Հաջորդ տողը պարզ է. Երբ նոր համարը հաշվարկվի 0 ինդեքսի համար, մենք ցանկանում ենք նույն հաշվարկը կատարել մնացած բոլոր ինդեքսների համար: Բարեբախտաբար, while հանգույցը կարգավորում է քայլերը բազմիցս, մինչև հասնենք վերջին ցուցանիշին: Այժմ մենք պարզապես պետք է համոզվենք, որ օղակը ընտրում և հաշվարկում է հաջորդ ինդեքսը ամեն անգամ, երբ դա արվում է ընթացիկ ինդեքսով:
Օղակը ընտրելու համար հաջորդ ինդեքսը, մենք պարզապես պետք է ինդեքս փոփոխականն ավելացնենք 1 -ով: Յուրաքանչյուր օղակի վերջում ինդեքս փոփոխականն ավելացնելով 1 -ով, այն նորից կաշխատի հաջորդ ինդեքսը: Օղակի վերջում ինդեքս փոփոխականն ավելացնելու համար տես ստորև բերված կոդը:
def addFive (lst):
nlst = index = 0 մինչդեռ ինդեքս <len (lst): nlst.append (lst [index] + 5) index = index + 1
Քայլ 8: Ավելացրեք վերադարձի հայտարարություն
Մենք հասել ենք while loop գործառույթը ստեղծելու վերջին քայլին: Այժմ մենք պարզապես ավելացնում ենք վերադարձի հայտարարություն ՝ ցանկը nlst վերադարձնելու համար ցանկացած փոփոխականի, որի վրա ցանկանում ենք այն դնել: Համոզվեք, որ չեղյալ հայտարարեք վերադարձի հայտարարությունը, որպեսզի այն ՄԻԱՅՆ վերադառնա nlst այն ժամանակ, երբ loop- ը ամբողջովին անցել է lst պարամետրը:
def addFive (lst):
nlst = index = 0 մինչդեռ ինդեքս <len (lst): nlst.append (lst [index] + 5) index = index + 1 return nlst
Քայլ 9. Փորձարկեք while loop գործառույթը
Այժմ մենք պարզապես պետք է փորձարկենք մեր while loop գործառույթը `տեսնելու, թե այն աշխատում է: Սկզբում պահեք ձեր Python ֆայլը ձեր համակարգչում, այնուհետև սեղմեք F5 ստեղնաշարի վրա `ծրագիրը գործարկելու համար: Հաջորդը, մուտքագրեք ստորև բերված ելքային օրինակի հայտարարությունները (հայտարարությունները, որոնք գտնվում են սլաքների կողքին): Յուրաքանչյուր հայտարարությունից հետո սեղմեք enter ՝ արդյունքները տեսնելու համար:
Ձեր արդյունքները պետք է համապատասխանեն ստորև բերված արդյունքներին: Եթե ձեր արդյունքները չեն համընկնում, ստուգեք ՝ համոզվելու համար, որ ձեր բոլոր փոփոխականները ճիշտ եք գրել, քանի որ սխալ գրված փոփոխականները սովորական սխալ են ծրագրավորման ժամանակ: Atedշգրիտ փոփոխված փոփոխականի սխալ ուղղագրությունը ձեր ծածկագիրը գործարկելիս սխալ հաղորդագրություններ առաջացնելու ճանապարհ է:
>> a = [1, 2, 4, 7]
>> b = addFive (a) >>> b [6, 7, 9, 12] >>> a [1, 2, 4, 7]
*Iceանուցումների ցանկը նույնը մնում է addFive գործառույթը կանչելուց հետո: Դա պայմանավորված է նրանով, որ մենք նոր ցուցակ ենք ստեղծել գործառույթի մարմնում: Սա համարվում է ոչ ապակառուցողական գործառույթ, քանի որ սկզբնական ցուցակը ՉԻ ոչնչացվել:
Շնորհավորում եմ: Դուք գրել եք ձեր առաջին իսկ օղակը Python- ում: A while loop- ը հիանալի գործիք է, որը թույլ է տալիս արդյունավետ կերպով շրջանցել մի շարք քայլեր ծրագրավորման ժամանակ: Այս հանգույցը նաև օգնում է ձեզ մաքուր ծածկագիր գրել ՝ թույլ տալով խուսափել կրկնվող կոդի գրելուց: Եթե դուք երբևէ որևէ նախագծի վրա եք աշխատում թիմի հետ, ձեր թիմի անդամները երախտապարտ կլինեն, որ ձեր ծրագրերը կարդալիս ստիպված չեն անցել ավելորդ ծածկագրի լրացուցիչ տողերով: A while loop- ը հզոր գործիք է, որը կշարունակի օգնել ձեզ կոդավորման ճանապարհորդության մեջ:
Խորհուրդ ենք տալիս:
Attiny85 միաժամանակյա ծրագրավորում կամ բազմագույն աչքերով դդում ՝ 7 քայլ
Attiny85 միաժամանակյա ծրագրավորում կամ բազմագույն աչքերով դդում. Այս նախագիծը ցույց է տալիս, թե ինչպես կարելի է վերահսկել երկու 10 մմ տրամագծով երեք գունավոր ընդհանուր անոդային լուսադիոդներ (դդումի Հելոուինի փայլերի բազմագույն աչքեր) Attiny85 չիպով: Նախագծի նպատակն է ընթերցողին ծանոթացնել միաժամանակ ծրագրավորման արվեստին և օգտագործել Ադամ Դ
Ինչպես ստեղծել Linux Boot Drive (և ինչպես օգտագործել այն). 10 քայլ
Ինչպես ստեղծել Linux Boot Drive (և ինչպես օգտագործել այն). Սա պարզ ներածություն է, թե ինչպես սկսել Linux- ը, մասնավորապես Ubuntu- ն
Լարսոն օղակ `5 քայլ
Larson Loop. Այս նախագիծը կոչվում է Larson Loop, որը ոգեշնչված է Larson Scanner կոչվող սարքով: Գաղափարն այն է, որ դուք ունեք մի քանի LED լուսարձակներ մի հանգույցում, որտեղ LED- ների լույսը նայում է, քանի որ այն գնում է մի հանգույց: Բացի այդ, պոտենցիոմետրը օգտագործվում է փոխելու համար
Ինչպես ստեղծել վեբ կայք (քայլ առ քայլ ուղեցույց). 4 քայլ
Ինչպես ստեղծել կայք (քայլ առ քայլ ուղեցույց). Այս ուղեցույցում ես ձեզ ցույց կտամ, թե ինչպես են վեբ ծրագրավորողներից շատերը կառուցում իրենց կայքերը և ինչպես կարող եք խուսափել թանկարժեք վեբ կայքերից, որոնք հաճախ չափազանց սահմանափակ են ավելի մեծ կայքի համար: Ես նաև օգնել ձեզ խուսափել որոշ սխալներից, որոնք ես արել եմ, երբ ես սկսել էի
ԷՍԳ -ի վրա հիմնված սրտի զարկերի ցուցանիշի օղակ `4 քայլ
ԷՍԳ -ի վրա հիմնված սրտի զարկերի ցուցանիշի օղակ. Ձեր սրտի բաբախյունների հետ համաժամեցվող մի փունջ լուսադիոդներ թարթելը պետք է պարզ լինի շրջակա այս ամբողջ տեխնոլոգիայի հետ, այնպես չէ՞: Դե, դա մինչ այժմ չէր: Ես անձամբ մի քանի տարի պայքարեցի դրա հետ ՝ փորձելով ազդանշան ստանալ բազմաթիվ PPG և ԷՍԳ սխեմաներից