= True
a = False
b
print(type(a))
print(a)
print(b)
<class 'bool'>
True
False
Խուստուփ, լուսանկարի հղումը Հեղինակ՝ Հայկ Բարսեղյան
(գուցե մի թեթև հին լինի վերսիան)
Ախ
if
տեսնեմ_օրերից_մի_օր:
(c) ժողովուրդ
if
(c) Pink Floyd
Սովորում ենք ինչպես աշխատացնել տարբեր ծրագրեր կախված որոշ պայմաններից։ Նախ ծանոթանում ենք boolean
տվյալների տեսակին (True, False արժեքները ընդունող), ապա որոշ համեմատության գործողություններին (==, >, is, …), հետո ծանոթանում ենք if
(եթե) բլոկին ու իրա հետ եկող elif
, else
կտորներին։ Վերջում նայում ենք ներդրված պայմանները (if-ի մեջ if) ու համեմատաբար նոր գրելաձև match
-ով։
Գործնական դասերին (հիմիկվա, ու 2023-ի) նայում ենք լրիվ տարբեր խնդիրներ, նենց որ կարող եք երկու դասն էլ նայել։ Նաև հասանելի ա տնայինների քննարկման տեսագրություն 2023-ից։
2023 1. Դասախոսությունը (նյութը նույնն ա, դասը անցկացնողները տարբեր) 2. Գործնականը (խնդիրները լրիվ տարբեր են) 3. Տնայինների քննարկում
Տնայինի հետ կապված նշումները ֆայլի վերջում են
The name “Boolean” comes from the mathematician George Boole
= True
a = False
b
print(type(a))
print(a)
print(b)
<class 'bool'>
True
False
Օպերատոր | նկարագիր |
---|---|
== | True, եթե հավասար են |
!= | True, եթե հավասար չեն |
< | True, եթե ավելի փոքրա առաջինը երկորդից |
> | True, եթե ավելի մեծա առաջինը երկորդից |
<= | True, եթե առաջինը ավելի փոքրա կամ հավասար երկորդից |
>= | True, եթե առաջինը ավելի մեծա կամ հավասար երկորդից |
is | True, եթե նույն օբյեկտ են (հեսա կբացատրեմ :) ) |
Հակառակ դեպքում՝ False
= 42
a = 509 b
print(a, "==", b, a==b)
print(a, "!=", b, a != b)
42 == 509 False
42 != 509 True
print(a, ">", b, a>b)
print(a, "<", b, a<b)
42 > 509 False
42 < 509 True
print(a, ">=", b, a >= b )
print(a, "<=", b, a<=b)
42 >= 509 False
42 <= 509 True
print(a, 'is', b, a is b)
11 is 509 False
\(-2^8\)-ից \(2^8\) integer-ների դեպքում նրբություն կա որը դասի ժամանակ չեմ նշում, կարող եք կարդալ այստեղ
= 465
c = 465
d
print(c, '==', d, c == d)
print(c, 'is', d, c is d)
465 == 465 True
465 is 465 False
= c
e print(e, 'is', c, e is c)
465 is 465 True
print(id(c))
print(id(d))
print(id(e))
140465260069104
140465260070864
140465260069104
print(c is d)
# ն նույննա ինչ
print(id(c) == id(d))
False
False
and (&), or (|), not
# and (&)
print(True and True) # True and True and True
print(True & False) # print(True & False), & - shift 7
print(False and False and False)
True
False
False
# or (|)
print(True or True)
print(True | False) # print(True | False), | - shift + \
print(False or False)
True
True
False
# not
print(not True)
print(not False)
False
True
= 14
a
print(a > 10)
print(a < 20)
print(a > 10 and a < 20)
print(10 < a and a < 20)
print(10 < a < 20) # 10 < a and a < 20
True
True
True
True
True
print(10 < a < 20)
True
= 11
a print(10 == a < 13) # 10 == a and a < 13
# ի՞նչ կտա
False
print(not 5 != 3)
False
print((not 4 == 4) or (4 < 6))
True
print((5 < 5 and 5 > 3) or 4 > 4)
False
print(True == 2)
print(False == 0)
False
True
print(True - True)
0
print(True / False)
--------------------------------------------------------------------------- ZeroDivisionError Traceback (most recent call last) Input In [17], in <cell line: 1>() ----> 1 print(True / False) ZeroDivisionError: division by zero
print(True * 4 - False + 3 * False)
4
False են False ից ու 0 ից բացի նաև՝
print(int(3.14))
print(bool(3.14))
3
True
bool(0)
False
bool(0.0)
False
bool('')
False
bool([])
bool({})
bool(())
False
bool(None)
False
Մնացած ամենինչ True
print(bool(3))
print(bool(3) and True)
True
True
print(bool('պանիր'))
True
Հաճախ մեր գործողությունները տարբեր են, կախված որոշ պայմաններից,
Օրինակ շոր հագնելու ֆունկցիան կախվածա եղանակից՝
եթե ցուրտա
տաք շոր հագնել
մնացած դեպքերում թեթև հագնվել
= False
is_cold
if is_cold:
print(1)
print('տաք հագնվի, չմրսես բալա ջան')
print(2)
# tab = q-ից ձախ
# indentation
# if x
# {
# ...
# }
2
= False
is_cold
if is_cold == True: # կարանք չգրենք == True; bool(...) == True
print('մտանք if')
print('տաք հագնվի, չմրսես բալա ջան')
else:
print('մտանք else')
print(2)
մտանք else
2
if bool(3) == True:
print(1)
if bool(3):
print(2)
if 3: # bool(3)
print(3)
if 0: # bool(0)
print(4)
1
2
3
= False
is_cold
if is_cold: # bool(is_cold) == True
print('տաք հագնվի, չմրսես բալա ջան')
else:
print("տաք է")
print(2)
տաք է
2
Մի քանի պայման and, not, or-ով
= True
vazelu_enq = False
curta
if (not curta) and vazelu_enq:
print('բոթաս')
print(3)
else:
print('կոշիկ')
print(4)
բոթաս
3
Հնարավորա այնպես լինի որ տարբերակները երկուսից շատ լինեն՝
= 'շաբաթ' # or = "շաբաթ"
day
if day == 'շաբաթ':
print('գնացինք շաբաթօրյակ')
else:
print('չենք գնում շաբաթօրյակի, բա ու՞ր ենք գնում՝ պարզ չի')
գնացինք շաբաթօրյակ
= 'կիրակի'
day
if day == 'շաբաթ':
print('գնացինք շաբաթօրյակ')
else:
if day == 'կիրակի': # else if, եթե վերևի if-ը չի ու մեր ստեղ գրած պայմաննա
print('գնացինք չինգաչունգ խաղանք')
else: # axh orer
print('գնացինք դասի :( ')
գնացինք չինգաչունգ խաղանք
= 'շաբաթ'
day
if day == 'շաբաթ':
print('գնացինք շաբաթօրյակ')
elif day == 'կիրակի': # else if, եթե վերևի if-ը չի ու մեր ստեղ գրած պայմաննա
print('գնացինք չինգաչունգ խաղանք')
else:
print('գնացինք դասի :( ')
գնացինք դասի :(
= 'շաբաթ'
day = "կիրակի"
day = "werxtyno"
day
if day == 'շաբաթ':
print('գնացինք շաբաթօրյակ')
elif day == 'կիրակի': # else if, եթե վերևի if-ը չի ու մեր ստեղ գրած պայմաննա
print('գնացինք չինգաչունգ խաղանք')
else:
print('գնացինք դասի :( ')
գնացինք դասի :(
= 'շաբաթ'
day # day = "կիրակի"
# day = "werxtyno"
if day == 'շաբաթ':
print('գնացինք շաբաթօրյակ')
if day == 'կիրակի': # else if, եթե վերևի if-ը չի ու մեր ստեղ գրած պայմաննա
print('գնացինք չինգաչունգ խաղանք')
else:
print('գնացինք դասի :( ')
Ծրագրավորղը գնումա խանութ, կինը ասումա՝
2 հատ հաց առ, եթե ձու լինի՝ 10 հատ վերցրու,
էս մարդը 10 հատ հաց առած գալիսա տուն, կինը հարցնումա ես ի՞նչ ես արել, ասումա դե ձու ունեին
= False
dzu_ka
if dzu_ka:
print('10 հաց')
else:
print("2 հաց")
2 հաց
= 20
tariq if tariq > 18:
print('Ինձ մի հատ գինի խնդրում եմ')
if tariq % 10 == 0:
print("Կլոր տարիք")
Ինձ մի հատ գինի խնդրում եմ
Կլոր տարիք
= 17
tariq
if tariq > 18:
pass
else:
print("ջուր կուզես")
ջուր կուզես
= 'ձմերուկ'
apranq
if apranq == 'պանիր':
= 2
gin elif apranq == 'ձմերուկ':
= 4
gin elif apranq == 'ժարիտ':
= 1_000_000_000 # _ կարանք դնենք
gin else:
= 'եսիմ'
gin
print(gin)
եսիմ
= 'ձմերուկ'
apranq
if apranq == 'պանիր':
= 2
gin elif apranq == 'ձմերուկ':
= 4
gin # print(gin)
elif apranq == 'ժարիտ':
= 100_000_000_000_000 # _ կարանք դնենք
gin else:
= 'եսիմ'
gin
print(gin)
4
= 509
a
if a > 10:
print("մեծա 10-ից")
if a > 5:
print("մեծա 5-ից")
if a > 1:
print("մեծա 1-ից")
մեծա 10-ից
մեծա 5-ից
մեծա 1-ից
= 62
a
if a > 10:
print("մեծա 10-ից")
elif a > 5:
print("մեծա 5-ից")
elif a > 1: # եթե վերևինը ճիշտ եղավ, սա էլ չի աշխատի
print("մեծա 1-ից")
մեծա 10-ից
= 17
tariq = "509 դպրոց"
hastatutun # nested if
if tariq > 18: # pass գրում ենք եթե ուզում ենք ոչ մի բան չանել այդ դեպքում
if hastatutun == "ԵՊՀ":
print("ես էլ")
else:
if hastatutun == "509 դպրոց":
print("ես էլ եմ էդ")
else:
print("բա որտեղ ա էդ")
# if (tariq > 18) and hastatun == "::
# ...
# elif tariq < 18 an d
ես էլ եմ էդ
-> ջուր
անչափահասին -> whiskey
գինի չսիրողին -> գինի ու պանիր
գինի ու պանիր -> մենակ գինի գինի սիրում պանիր չի սիրում
= 18
tariq = True
panir_sirum = False
gini_sirum
if tariq < 18:
print("Jur")
elif not gini_sirum:
print("whiskey")
elif (tariq >= 18) and gini_sirum and panir_sirum:
print("Gini u panir")
elif (tariq >= 18) and gini_sirum and (not panir_sirum):
print("Gini")
whiskey
= 18
tariq = True
panir_sirum = False
gini_sirum
if tariq >= 18:
if gini_sirum:
if panir_sirum:
print("gini u panir")
else:
print("gini")
else:
print("Whiskey")
else:
print("Jur")
Whiskey
= 16
tariq = True
gini_sirum = True
panir_sirum
if tariq < 18:
print("ջուր")
else:
if gini_sirum and panir_sirum:
print("գինի ու պանիր")
elif gini_sirum:
print("գինի")
else:
print("whiskey")
ջուր
= 16
tariq = True
gini_sirum = True
panir_sirum
if tariq < 18:
print("ջուր")
else:
if gini_sirum:
if panir_sirum:
print("գինի ու պանիր")
else:
print("gini")
else:
print("whiskey")
ջուր
# 2 * 2 * 2 = 8
= 16
tariq = True
gini_sirum = True
panir_sirum
if tariq > 18:
if gini_sirum:
if panir_sirum:
print("գինի ու պանիր")
else:
print("gini")
else:
print("whiskey")
else:
print("ջուր")
ջուր
= 'ձմերուկ'
apranq
if apranq == 'պանիր':
= 2
gin elif apranq == 'ձմերուկ':
= 4
gin elif apranq == 'ժարիտ':
= 1_000_000_000 # _ կարանք դնենք
gin else:
= 'եսիմ'
gin
print(gin)
4
= "ձմերուկ"
apranq match apranq: # switch, case
case "պանիր": # if apranq == "պանիր"
= 2
gin case "ձմերուկ":
= 4
gin case "ժարիտ":
= 1_000_000_000
gin case _: # _ -> else
= "եսիմ"
gin
print(gin)
4
Տարբեր խնդիրներ ենք նայում երկու վիդեոներում
Read two floats, weight (kg) and height (m), compute the Body Mass Index:
BMI = weight / (height ** 2)
Then categorize:
Don’t forget to check that the input is valid (positive numbers).
Input | Output |
---|---|
70 1.75 | Normal |
-70 1.75 | Invalid input |
= float(input("Weight: "))
weight = float(input("Height: "))
height
if (weight <= 0) or (height <= 0):
print("Invalid input")
else:
= weight / (height ** 2)
BMI print("BMI is", BMI)
if BMI < 18.5:
print("Underweight")
elif BMI < 25:
print("Normal")
elif BMI < 30:
print("Overweight")
else:
print("Obese")
BMI is 0.4444444444444444
Underweight
Purchase Amount | Discount |
---|---|
Up to $100 | No discount |
$100–$500 | 5% |
Above $500 | 10% |
Additionally, if the user has a “premium” membership, they get an extra 5% on top of the above.
Example
Input: amount=600, premium=True
Output: 510.0
= float(input("Amount"))
amount = input("Premium (yes/no)")
premium
# himnakan
if amount < 100:
= 0
zexch elif amount <= 500:
= 0.05
zexch else:
= 0.1
zexch
print("Հիմնական զեղչ։", zexch)
# ծանոթ
if (premium == "yes") or (premium == "Yes"):
print("յաա, են ում ․․")
+= 0.05
zexch
print("ԶԵղչ։", zexch)
print(amount * (1 - zexch))
Հիմնական զեղչ։ 0.1
յաա, են ում ․․
ԶԵղչ։ 0.15000000000000002
450.5
print(bool(False))
print(bool("False"))
False
True
= float(input("Enter purchase amount: "))
amount = input("Premium membership? (yes/no): ")
membership
if amount <= 100:
= 0
discount elif amount <= 500:
= 0.05
discount else:
= 0.10
discount
if membership == "yes":
+= 0.05
discount
# Compute final price
= amount * (1 - discount)
final_price
# Print result
print("Final price:" , final_price)
The thermostat sets heating or cooling mode based on:
Current temp (float) and desired (float).
BUT if the user is “away” (bool), widen the deadband to ±5° before switching off.
Example Input: temp=22.0, desired=25.0, away=True Output: Heating
= float(input("Current temperature (°C): "))
temp = float(input("Desired temperature (°C): "))
desired = input("Away? (yes/no): ")
away
if away == "yes":
= 5
deviation else:
= 2
deviation
if temp < desired - deviation:
print("Heating")
elif temp > desired + deviation:
print("Cooling")
else:
print("Standby")
Standby
Profound 8.6
= int(input()), int(input())
x1, y1 = int(input()), int(input())
x2, y2
= x1 - x2
xdist = y1 - y2
ydist
if (xdist == 1 or xdist == -1) and (ydist == 2 or ydist == -2):
print("Yes")
elif (xdist == 2 or xdist == -2) and (ydist == 1 or ydist == -1):
print("Yes")
else:
print("No")
if
-ից ու else
-ից (elif
ենթադրեք որ չգիտեք)