Məzmuna keç
Educora
Başlanğıc15 dəq2 / 42

Dəyişənlər, verilənlərin tipləri və hesab əməlləri

Qiymətləri dəyişənlərdə saxla, əsas tiplərlə tanış ol, hesablamalar apar və bir tipi digərinə çevir.

Özünü yoxla
Bu dərsdə öyrənəcəksən
  • Dəyişən yaratmaq və onun qiymətini yeniləmək
  • int, float, str və bool tiplərini fərqləndirmək
  • Hesab operatorlarından, o cümlədən tam bölmə və qalıq operatorlarından istifadə etmək
  • Qiymətləri int(), float() və str() ilə çevirmək

Oyunda xal toplayırsan: əvvəl 0, sonra 10, sonra 25. Proqram bu ədədi haradasa yadda saxlamalı və hər dəfə yeniləməlidir. Bunun üçün dəyişənlərdən istifadə olunur. Dəyişəni üzərində ad yazılmış qutu kimi təsəvvür et: içinə qiymət qoyursan, sonra adına görə tapıb baxırsan və ya dəyişirsən.

Dəyişənlər

Tərif
Dəyişən

Yaddaşda saxlanan qiymətə verilən ad. Dəyişən = işarəsi ilə yaradılır: solda ad, sağda qiymət yazılır.

Python
name = 'Murad'
age = 14
height = 1.62
print(name, age, height)

age = age + 1
print('Next year:', age)
▸ Gözlənilən nəticə
Murad 14 1.62
Next year: 15

Diqqət et: proqramlaşdırmada = riyaziyyatdakı bərabərlik deyil, mənimsətmədir. age = age + 1 sətri belə oxunur: «age-in köhnə qiymətini götür, üzərinə 1 əlavə et və nəticəni yenidən age-ə yaz». Dəyişənin qiyməti istənilən vaxt dəyişə bilər — adı da buradan gəlir.

  • Ad hərflərdən, rəqəmlərdən və alt xətdən (_) ibarət ola bilər, amma rəqəmlə başlaya bilməz: score2 düzgündür, 2score isə yox.
  • Adda boşluq olmur. Bir neçə sözü alt xətlə birləşdir: first_name, total_price.
  • Böyük və kiçik hərflər fərqlidir: age və Age iki ayrı dəyişəndir.
  • Python-un xüsusi sözlərini (if, for, class, True və s.) ad kimi işlətmək olmaz.
  • Mənalı adlar seç: price adı x-dən qat-qat çox şey deyir.

Verilənlərin əsas tipləri

Hər qiymətin bir tipi var və tip həmin qiymətlə nə etmək olacağını müəyyən edir: ədədləri toplamaq, sətirləri isə birləşdirmək olar. Python tipi özü müəyyən edir, onu ayrıca yazmağa ehtiyac yoxdur.

TipNədirNümunələr
inttam ədəd14, -3, 2026
floathəqiqi ədəd (onluq kəsr)1.62, 3.14, -0.5
strsətir (mətn)'Baku', '42'
boolməntiqi qiymətTrue, False

Qiymətin tipini type() funksiyası ilə yoxlamaq olar.

Python
print(type(14))
print(type(1.62))
print(type('Baku'))
print(type(True))
print(type('42'))
▸ Gözlənilən nəticə
<class 'int'>
<class 'float'>
<class 'str'>
<class 'bool'>
<class 'str'>

Son sətrə diqqət et: '42' dırnaq içində olduğu üçün ədəd deyil, sətirdir. True və False isə «bəli» və «xeyr» cavablarıdır — şərtlər dərsində onlar çox lazım olacaq.

Hesab əməlləri

OperatorƏməlNümunəNəticə
+toplama7 + 29
-çıxma7 - 25
*vurma7 * 214
/bölmə7 / 23.5
//tam bölmə7 // 23
%bölmədən qalıq7 % 21
**qüvvətə yüksəltmə7 ** 249

Leyla hər biri 2,5 manat olan 3 dəftər alır. Hesablamanı Python-a tapşıraq və digər operatorları da yoxlayaq.

Python
price = 2.5
count = 3
total = price * count
print('Total:', total)

print(17 // 5, 17 % 5)
print(2 ** 10)
print(2 + 3 * 4, (2 + 3) * 4)
▸ Gözlənilən nəticə
Total: 7.5
3 2
1024
14 20

Python riyaziyyatdakı əməllərin ardıcıllığına riayət edir: əvvəlcə qüvvətə yüksəltmə, sonra *, /, //, %, ən sonda isə + və -. Ardıcıllığı dəyişmək üçün mötərizədən istifadə et: 2 + 3 * 4 14 verir, (2 + 3) * 4 isə 20.

Nümunə: dəqiqələri saata çevirmək

Film 135 dəqiqə davam edir. Bu, neçə saat və neçə dəqiqədir?

Həllini göstər
Tam saatları // ilə tapırıq: 135 // 60 = 2.
Qalan dəqiqələri % ilə tapırıq: 135 % 60 = 15.
Cavab: 2 saat 15 dəqiqə.
Python
minutes = 135
hours = minutes // 60
rest = minutes % 60
print(hours, 'h', rest, 'min')
▸ Gözlənilən nəticə
2 h 15 min

Dəyişəni öz qiymətinə görə yeniləmək çox tez-tez lazım olur, ona görə Python-da qısa yazılış var: score += 10 ilə score = score + 10 eyni şeydir. -=, *= və /= də eyni qaydada işləyir.

Python
score = 0
score += 10
score += 5
score -= 3
score *= 2
print('Score:', score)
▸ Gözlənilən nəticə
Score: 24

Tiplərin çevrilməsi

Ədədi sətirlə birbaşa toplamaq olmaz: '5' + 5 yazsan, Python TypeError xətası verəcək, çünki mətnlə ədədi necə birləşdirəcəyini bilmir. Belə hallarda qiyməti lazım olan tipə çevirmək lazımdır: int() tam ədədə, float() həqiqi ədədə, str() isə sətrə çevirir.

Python
text = '25'
number = int(text)
print(number + 5)
print(text + '5')
print(float('3.5') * 2)
print('Age: ' + str(14))
print(int(7.9))
▸ Gözlənilən nəticə
30
255
7.0
Age: 14
7

text + '5' iki sətri yan-yana yapışdırdığı üçün 255 alınır — bu, iki yüz əlli beş ədədi deyil, 2, 5 və 5 simvollarından ibarət mətndir.

Tapşırıq

Otaq düzbucaqlı formasındadır: eni width = 7, uzunluğu height = 4 (metrlə). Sahəni area dəyişəninə, perimetri isə perimeter dəyişəninə yaz, sonra iki sətir çap et: Area: və sahə, Perimeter: və perimetr.

Tapşırıq · Python
width = 7
height = 4
# area = ...
# perimeter = ...
# print Area: and Perimeter:
▸ Gözlənilən nəticə
Area: 28
Perimeter: 22
Tapşırıq

47 konfet 6 uşaq arasında bərabər bölünür. Ədədlər sətir kimi verilib ('47' və '6'). Onları int() ilə ədədə çevir, sonra iki sətir çap et: Each child: və hər uşağa düşən konfet sayı, Left over: və artıq qalan konfetlər.

Tapşırıq · Python
candies_text = '47'
children_text = '6'
# 1) convert both strings to int
# 2) print Each child: and the share (use //)
# 3) print Left over: and the rest (use %)
▸ Gözlənilən nəticə
Each child: 7
Left over: 5

Əsas fikirlər

  • Dəyişən qiymətə verilən addır və = (mənimsətmə) ilə yaradılır.
  • Əsas tiplər: int, float, str, bool; qiymətin tipini type() göstərir.
  • / həmişə float verir, // bölmənin tam hissəsini, % isə qalığı hesablayır.
  • x += 1 yazılışı x = x + 1 deməkdir.
  • int(), float() və str() qiyməti bir tipdən digərinə çevirir; int() kəsr hissəsini atır.

Özünü yoxla

10 sual. Hər düzgün cavab XP qazandırır.

1 / 10
x = 5 və sonra x = x + 2 yazılıb. print(x) nə göstərəcək?