3.5
Chained conditionals
3.5 მიჯაჭვული კავშირები
ხანდახან არის ორზე მეტი შესაძლებლობა და გვინდა ორზე მეტი ტოტი(კოდის)
. ერთ-ერთი საშუალება გამოთვლის გამოსახატად
არის chained conditional (მიჯაჭვული კავშირი);
if x < y:
print 'x is less than y'
elif x > y:
print 'x is greater than
y'
else:
print 'x and y are equal'
elif არის “else
if.” - ის აბრევიატურა. კიდევ ერთხელ; ზუსტად ერთი ტოტი განხორციელდება.
elif ცნების რაოდენობაზე ლიმიტი
არ არის. თუ არის else პირობა, ის უნდა იყოს კოდის ბოლოში, მაგრამ აქ არცერთის
ყოფნაა არაა საჭირო:
if choice == 'a':
print 'Bad guess'
elif choice == 'b':
print 'Good guess'
elif choice == 'c':
print 'Close, but not
correct'
თითოეული პირობა შემოწმებულია რიგის მიხედვით. პირველი პირობა თუ მცდარია,
შემოწმდება მეორე და. ა. შ. რომელიმე თუ მართალია შესაბამისი ტოტი განხორციელდება და
ანგარიში მორჩება. თუ ერთზე მეტი პირობაა მართალი, მარტო პირველი მართალი ტოტი განხორციელდება.
3.6
Nested conditionals
3.6 დაბუდებული პირობითი კავშირი
პირობა შეიძლება ჩაბუდებული იყოს სხვა პირობაში. შეგვეძლო დაგვეწერა ასეც:
if x == y:
print 'x and y are equal'
else:
if x < y:
print 'x is less
than y'
else:
print 'x is greater
than y'
ამ კოდს აქვს ორი ტოტი. პირველ ტოტში მარტივი ბრძანებაა , მეორე ტოტი შეიცავს
სხვა if პირობას,
რომელსაც თავის მხრივ აქვს ორი ტოტი. ამ ორივე ტოტში მარტივი ბრძანებებია, თუმცა ეს
ასევე შეიძლება ყოფილიყო პირობითი ცნებები
დაკბილულობა კოდს ხდის ხილვადს. დაბუდებული პირობითი კავშირები
არის ძნელად წასაკითხი და ზოგადად კარგი იქნება თუ აირიდებ მსგავს კოდს.
ლოგიკური ოპერატორები ხშირად უზრუნველყოფენ გზას, რომ გაამარტივო ჩაბუდებული
კავშირები. მაგალითად, შეგვიძლია გადავწეროთ კოდი ერთი პირობის გამოყენებით:
if 0 < x:
if x < 10:
print 'x is a
positive single-digit number.'
print ბრძანება განხორციელდება
თუ ორივე პირობა შესრულდება. ასეთივე კოდის დაწერა შეგვიძლია and ოპერატორის
დახმარებით
if 0 < x and x < 10:
print 'x is a positive
single-digit number.'
No comments:
Post a Comment