Կարող եք ձեր կոդը փորձարկել այստեղ
Պայմանական կոնստրուկտները օգտագործում են պայմանական արտահայտություններ և, կախված դրանց իմաստից, ուղիղ ծրագրի կատարումը ուղիներից մեկի երկայնքով: Այդպիսի կառուցվածքներից է if կառուցումը:
Իր ամենապարզ ձևով, եթե բանալի բառին հաջորդում է տրամաբանական արտահայտությունը։ Եվ եթե այս տրամաբանական արտահայտությունը վերադարձնում է True, ապա կատարվում է հրահանգների հաջորդ բլոկը, որոնցից յուրաքանչյուրը պետք է սկսվի նոր տողով և պետք է նահանջ լինի արտահայտության սկզբից if(ցանկալի է այն 4 բացատ կամ թվով նահանջ անել. բացատներ, որոնք 4-ի բազմապատիկ են):
language = "english"
if language == "english":
print("Hello")
print("End")
Քանի որ այս դեպքում լեզվի փոփոխականի արժեքը «անգլերեն» է, ապա կկատարվի if բլոկը, որը պարունակում է միայն մեկ հրահանգ՝ print("Hello"). Արդյունքում, վահանակը կթողարկի հետևյալ տողերը.
Բարեւ Վերջ
Ուշադրություն դարձրեք կոդի վերջին տողին, որը ցուցադրում է «Վերջ» հաղորդագրությունը: Այն տողի սկզբից նահանջված չէ, ուստի այն չի պատկանում if բլոկին և այնուամենայնիվ կկատարվի, նույնիսկ եթե if կառուցվածքի արտահայտությունը վերադարձնի False:
Բայց եթե մենք այն մտցնեինք, այն նույնպես կպատկաներ if կառուցվածքին.
language = "english"
if language == "english":
print("Hello")
print("End")
այլապես արգելափակել
Եթե հանկարծ մենք պետք է սահմանենք այլընտրանքային լուծում, եթե if արտահայտությունը վերադարձնի False, ապա մենք կարող ենք օգտագործել else բլոկ.
language = "russian" if language == "english": print("Hello") else: print("Привет") print("End")
Եթե արտահայտությունը language == "english"վերադարձնում է True, ապա կատարվում է if բլոկը, հակառակ դեպքում՝ else բլոկը։ Եվ քանի որ այս դեպքում պայմանը language == "english"վերադարձնում է False, բլոկի հրահանգները կկատարվեն else:
Ավելին, else բլոկի հրահանգները նույնպես պետք է գծի սկզբից կտրվեն: Օրինակ, վերը նշված օրինակում print("End") այն նահանջված չէ, ուստի այն ներառված չէ բլոկում elseև կկատարվի անկախ նրանից, թե ինչ պայման է language == "english": Այսինքն, վահանակը կցուցադրի հետևյալ տողերը.
Hello End
Another բլոկը կարող է ունենալ նաև մի քանի հայտարարություններ, որոնք պետք է տողի սկզբից կտրվեն.
language = "russian"
if language == "english":
print("Hello")
print("World")
else:
print("Привет")
print("мир")
elif
Եթե անհրաժեշտ է ներմուծել մի քանի այլընտրանքային պայմաններ, ապա կարող են օգտագործվել լրացուցիչ elif բլոկներ , որին հաջորդում է հայտարարությունների բլոկը:
language = "german"
if language == "english":
print("Hello")
print("World")
elif language == "german":
print("Hallo")
print("Welt")
else:
print("Привет")
print("мир")
Python-ը նախ ստուգում է արտահայտությունը if. Եթե դա True է, ապա if բլոկի հրահանգները կատարվում են: Եթե այս պայմանը վերադարձնում է False, ապա Python-ը ստուգում է արտահայտությունը elif.
Եթե հետո արտահայտությունը elif հավասար է True, ապա բլոկի հրահանգները կատարվում են elif: Բայց եթե այն հավասար է False, ապա բլոկի հրահանգները կատարվում են else
Անհրաժեշտության դեպքում դուք կարող եք սահմանել մի քանի բլոկ elifտարբեր պայմանների համար: Օրինակ:
language = "german"
if language == "english":
print("Hello")
elif language == "german":
print("Hallo")
elif language == "french":
print("Salut")
else:
print("Привет")
Nested if structs
«if» կոնստրուկցիան, իր հերթին, կարող է ինքնին ունենալ, եթե կառուցում է.
language = "english"
daytime = "morning"
if language == "english":
print("English")
if daytime == "morning":
print("Good morning")
else:
print("Good evening")
Այստեղ if հայտարարությունը պարունակում է տեղադրված if/else դրույթ: Այսինքն, եթե լեզվի փոփոխականը հավասար է «անգլերեն»-ին, ապա nested if/else կոնստրուկցիան լրացուցիչ ստուգում է ցերեկային փոփոխականի արժեքը՝ տեսնելու՝ արդյոք այն հավասար է «morning» տողին, թե ոչ։ Եվ այս դեպքում մենք կստանանք հետևյալ վահանակի ելքը.
English Good morning
Արժե հաշվի առնել, որ nested if-ի հայտարարությունները նույնպես պետք է սկսվեն նահանջով, իսկ ներդիր կառուցվածքների հայտարարությունները նույնպես պետք է լինեն նահանջ: Պատշաճ կերպով չտեղադրված նահանջը կարող է փոխել ծրագրի տրամաբանությունը: Այսպիսով, նախորդ օրինակը նույնը չէ, ինչ հետևյալը.
language = "english"
daytime = "morning"
if language == "english":
print("English")
if daytime == "morning":
print("Good morning")
else:
print("Good evening")
Նմանապես, դուք կարող եք տեղադրել nested if/elif/else կառուցվածքները elif և else բլոկներում.
language = "russian"
daytime = "morning"
if language == "english":
if daytime == "morning":
print("Good morning")
else:
print("Good evening")
else:
if daytime == "morning":
print("Доброе утро")
else:
print("Добрый вечер")
Մեկնաբանություն գրելու համար խնդրում ենք մուտք լինել