PYTHONDA BACKEND ASOSLARI │4-DARS

Assalomu alaykum, biz Python dasturlash tilida backend asoslarni o'rganishni davom etamiz. Bugungi darsimiz oldingilari kabi ko'p mavzulardan tashkil topmaydi. Kasr sonlar mavzusi biroz kattaroq bo'lgani uchun ushbu mavzuga batafsilroq to'htalishga qaror qildim.
Darsimizni boshlashdan oldin eslatma!
Agar siz darslarimizni endi kuzatishni boshlagan bo'lsangiz, uning oldingi sonlarini ham ko'rib chiqishni maslahat beramiz:
1-dars: Internet qanday ishlaydi, Python nima, O’rnatish va sozlash, Python falsafasi, Pythondagi ilk kodingiz.
2-dars: O'zgaruvchilar va ularning turlari, Turlarni o'zgartirish.
3-dars: Xatolar, o'zgaruvchilarni nomlash, ekranga chiqarish.
Kasr sonlar

Biz bilganimizdek, sonlarning butun va kasr turlari mavjud. O'nli kasrlar yoki suzuvchi nuqta (float poin) raqamlari uchun Pythonda maxsus ma'lumotlar turi mavjud - float.
# message nomli o’zgaruvchini e’lon qildik va unga 'Salom, dunyo!' satrini o’zlashtirdik message = 'Salom, dunyo!' 187.642
Kasr sonlar ham, huddi butun sonlar singari str() funksiyasini chaqirish orqali satrlarga aylantiriladi:
first = 87.2 second = 50.2 third = 50.242 print(str(first) + str(second) + str(third)) Salom, dunyo!
Kodimiz huddi yuqoridagidek ko'rinishda, ammo bu yerda boshqacha natija! Raqamlarni satrlarga aylantirib, biz sayt serverlarining birini IP manziliga oxshash natija oldik.
Huddi shuni aksincha qilsa ham bo'ladi. Satrlarni float() funksiyasi yordamida sonlarga aylantiramiz.
# number nomli o’zgaruvchiga 100 raqami yozilgan qiymat o’zlashtirildi number = 100 # symbol va dollar nomli o’zgaruvchilarning qiymatlari esa satrdan tashkil topdi symbol = '$' dollar = " dollar" 187.642
Kasr sonlarni int() funksiyasi orqali butun sonlarga keltirishimiz mumkin. E'tibor bergan bo'lsangiz u sonlarni arifmetik qoidalar asosida yaxlitlamaydi, shunchaki kasr qismini olib tashlaydi holos. Keling bu borada bir nechta misollarni ko'rib chiqamiz:
# bunday yaxlitashning natijasini quyida ko'rishingizm mumkin int(3.14) 600 хахахаха # yaxlitlash aslida bunday bo'lmaydi, ammo int() shunday natijani beradi int(2.72) 2 int(-3.14) name = 'Anfisa' # ism job = shaxsiy yordamchi' # kasb # kodingizni shu yerga yozing: print(Salom, mening ismim ' + ... + ', kasbim - ' + ... + 'ngman!') int(-2.72) -2
Bundan tashqari, bitta satrda bir nechta funksiyalarni qo'llashingiz mumkin. Dastlab, kasrni butun songa aylantirishga harakat qilamiz va keyin uni satrga o'zgartiramiz:
steps_today = 6783
steps_yesterday = 8452
steps_sum = ...  # yig’indini shu yerga kiriting
print('Ikki kun ichida jami nechta qadam tashlandi?')
print(steps_sum)
Butun qismi = 1
Qiziqarli ma'lumot: "float point (suzuvchi nuqta)" nimani anglatadi va u qayerga qarab suzadi?
Qo'pol qilib aytganda, kasr sonlar "suzuvchi nuqta raqamlari" deb nomlanadi, chunki vergul bu raqam darajasining hosilasi ko'rsatilganida "suzadi". Masalan, 3.14159 raqamini quyidagicha yozish mumkin:
314,159*10^(-2)
0,0314159*10^(2)
314159,0*10^(-5)
Ingliz adabiyotida vergul nuqta bilan almashtiriladi, floating point, chunki vaqtlar davomida o'nlik kasrlarni nuqta orqali yozish ular uchun odatga aylangan.
1-vazifa:

Keling Anfisa ismli yordamchimizni biroz mukammallashtiraylik. U kasrlarni odamlar kabi yaxlitlab chiqsin. Aniq qiymatli kasr - temperature_exact o'zgaruvchisida saqlanadi. Ekranga shunday natija chiqaring:
Ko'chada 39.3 gradus selsiy. Bu deyarli 40 gradusga teng.
temperature_exact = '39.3' temperature_approx = # qiymatni butun songa aylantiring va 1 qo'shing print # kodni bu yerga yozing
Bugungi darsimiz shu bilan yakunlandi. Qandaydir natijaga erishmoqchi bo'lsangiz, darslarni boshidan ko'rib, vazifalarni bajarib borishni unutmang. Navbatdagi darsda ro'yhatlar va ularni bog'lash haqida tushuntirib berishga harakat qilaman. E'tiboringiz uchun rahmat!