Python-ում դրոշների հետ աշխատանք
Դրոշ - սա հատուկ փոփոխական է,
որը կարող է ընդունել միայն երկու արժեք.
True կամ False: Օգտագործելով
դրոշները՝ կարելի է լուծել այնպիսի խնդիրներ,
որոնք ստուգում են որևէ բանի բացակայությունը.
օրինակ՝ կարելի է ստուգել, որ ցանկում չկա
տվյալ արժեքով տարր:
Եկեք լուծենք հետևյալ խնդիրը. տրված է թվերով
ցանկ, պետք է ստուգել, արդյոք դրա բոլոր տարրերը
դրական են: Դրա համար սահմանենք հատուկ փոփոխական
flag, որը մինչև ցիկլի սկսելը կլինի
ճշմարիտ: Իսկ երբ ցիկլում հանդիպի բացասական
թիվ, ապա դրա արժեքը կփոխենք False-ի:
Ստուգման արդյունքը պարզելու համար ցիկլից հետո
կոնսոլում արտածենք flag փոփոխականը:
lst = [1, 2, 3, 4, 5]
flag = True
for el in lst:
if el < 0:
flag = False
print(flag) # կարտածի True, քանի որ բոլոր թվերը դրական են
Լավ պրակտիկա է դրոշով փոփոխականին տալ այնպիսի
անուն, որն արտացոլում է դրված պայմանը: Եկեք
flag-ը վերանվանենք isAllPositive:
Եվ տեսանելի դարձնելու համար ցանկի մի թիվը
փոխենք բացասականի.
lst = [1, 2, 3, -4, 5]
isAllPositive = True
for el in lst:
if el < 0:
isAllPositive = False
print(isAllPositive) # կարտածի False, քանի որ կա բացասական թիվ
Եթե թվարկվող ցանկում կան բազմաթիվ արժեքներ
և անհրաժեշտ է դադարեցնել ցիկլը առաջին
բացասական թիվը հայտնաբերելուց հետո, ապա
պետք է կիրառել break հրահանգը.
for el in lst:
if el < 0:
isAllPositive = False
break
Դրոշների հետ աշխատանքիս, ցիկլի կատարումից
արդյունքը պարզելու համար, կարելի է արտածել
ոչ թե դրոշի արժեքը, այլ կամայական հաղորդագրություն
օգտագործելով լրացուցիչ if:
Եկեք վերագրենք նախորդ օրինակը: Եթե բոլոր
տարրերը դրական են, թող արտածվի '+++',
եթե ոչ՝ '---'.
for el in lst:
if el < 0:
isAllPositive = False
break
if isAllPositive:
print('+++')
else:
print('---') # կարտածի '---'
Տրված է ցանկ: Ստուգեք, որ նրա բոլոր տարրերը դրական թվեր են:
Տրված է ամբողջ թիվ: Ստուգեք, արդյոք այն պարզ է, այսինքն՝ բաժանվում է միայն մեկի և ինքն իր վրա: