🚗 Car
nomli class yozing. Quyidagi atributlarni o‘z ichiga olishi kerak:
brand
— mashina brendi (masalan, “BMW”)model
— model nomi (masalan, “X5”)year
— ishlab chiqarilgan yili (masalan, 2022)
📝 Talab:
__init__()
konstruktor orqali atributlarni qabul qilsin.- Hech qanday metod yozilmaydi, faqat class va atributlar.
🎓 Student
nomli class yarating. Quyidagi atributlar bo‘lishi kerak:
name
— to‘liq ismiage
— yoshigrade
— bahosi yoki o‘qish darajasi (masalan, 9-sinf)
📝 Talab:
- Har bir atribut
__init__()
orqali qiymat qabul qilsin. - Kodni o‘zingiz xohlagan 2-3ta object bilan sinab ko‘ring (shu fayl ichida).
👤 User
klassi yarating. U foydalanuvchi haqida quyidagi atributlarni saqlasin:
username
— login nomiemail
— elektron pochta manziliis_active
— foydalanuvchi aktivmi (True/False)
📝 Talab:
- Ob’ekt yaratganda, barcha atributlar qiymatini olish kerak.
is_active
uchun True yoki False qiymat kiritilsin.
🎬 Movie
nomli class yarating. U quyidagilarni o‘z ichiga olsin:
title
— kino nomigenre
— janri (masalan, “action”, “comedy”)duration
— davomiyligi (daqiqalarda)rating
— IMDB reytingi (masalan, 8.5)
📝 Talab:
float
vaint
turidagi atributlardan foydalaning.- Object yaratib, barcha atributlarni terminalga
print()
bilan chiqarib ko‘rsating.
🛍️ Product
nomli class yozing. Do‘kon mahsulotlarini ifodalasin:
name
— mahsulot nomiprice
— mahsulot narxi (masalan, 12999.99)category
— mahsulot turi (masalan, “electronics”)in_stock
— mahsulot omborda bormi (True/False)
📝 Talab:
- 2 ta mahsulot uchun object yarating.
print()
orqali har bir mahsulotning nomi va narxini chiqarib bering.
Student
nomli class yozing.
Atributlar:
name
– o‘quvchining ismiage
– o‘quvchining yoshigrade
– o‘qiyotgan sinfi
Metod:
-
info()
- Nima qiladi: o‘quvchi haqida matn ko‘rinishida ma’lumotni chiqaradi.
- Return: hech nima qaytarmaydi, faqat
print()
qiladi. - Namuna chiqish:
"Ali, 15 yoshda, 9-sinf o‘quvchisi."
Movie
nomli class yozing.
Atributlar:
title
– film nomigenre
– janriduration
– davomiyligi (daqiqa)rating
– film bahosi (float, masalan, 8.5)
Metod:
-
show_summary()
- Nima qiladi: film nomi, janri va bahosini bir qatorda chiqaradi.
- Return: hech nima qaytarmaydi,
print()
qiladi. - Namuna chiqish:
"Inception — fantastika janridagi film. Reyting: 8.8/10."
Product
nomli class yozing.
Atributlar:
name
– mahsulot nomiprice
– mahsulot narxi (masalan, 199.99)category
– mahsulot turiin_stock
– boolean (True/False) — omborda bor yoki yo‘qligi
Metod:
-
check_stock()
-
Nima qiladi: mahsulot omborda bormi yoki yo‘qligini ekranga chiqaradi.
-
Return: hech nima qaytarmaydi, faqat
print()
qiladi. -
Namuna chiqish:
"AirPods omborda mavjud ✅"
"iPhone 13 hozirda tugagan ❌"
-
User
nomli class yozing.
Atributlar:
username
– login nomiemail
– foydalanuvchi emailiis_active
– foydalanuvchi aktivmi (True/False)
Metodlar:
-
activate()
- Nima qiladi:
is_active
niTrue
ga o‘zgartiradi va foydalanuvchi faollashtirilgani haqida xabar beradi. - Return: hech nima qaytarmaydi, faqat
print()
qiladi.
- Nima qiladi:
-
deactivate()
- Nima qiladi:
is_active
niFalse
ga o‘zgartiradi va foydalanuvchi bloklangani haqida xabar beradi. - Return: hech nima qaytarmaydi, faqat
print()
qiladi.
- Nima qiladi:
BankAccount
nomli class yozing.
Atributlar:
owner
– hisob egasining ismibalance
– hisobdagi pul miqdori
Metodlar:
-
deposit(amount)
- Nima qiladi: berilgan summani balansga qo‘shadi.
- Return: yangi balansni
print()
qiladi.
-
withdraw(amount)
- Nima qiladi: agar balans yetarli bo‘lsa, pul yechib beradi; aks holda ogohlantiradi.
- Return: yangi balans yoki xato xabarni
print()
qiladi.
📌 Maqsad: Obyekt holatini method orqali o‘zgartirishni o‘rganish.
Book
nomli class yozing.
Atributlar:
title
– kitob nomiauthor
– muallifis_read
– True/False (kitob o‘qilganmi)
Metod:
-
mark_as_read()
- Nima qiladi:
is_read
niTrue
ga o‘zgartiradi - Return:
"Kitob o‘qilgan deb belgilandi"
deganprint()
chiqaradi
- Nima qiladi:
-
status()
- Nima qiladi: o‘qilganmi yoki yo‘qmi — shuni bildiradi
- Return:
"O‘qilgan"
yoki"O‘qilmagan"
debprint()
qiladi
📌 Maqsad: Boolean atributlar bilan ishlash, method orqali holatni o‘zgartirish
Juda yaxshi ketayapsan, Diyorbek!
Endi sening talabing bo‘yicha 12-task
dan boshlab obyektlar bilan ishlashga qaratilgan mustaqil uyga vazifalarni yozaman. Bu bosqichda o‘quvchilar:
- bir nechta object yaratishni,
- ular ustida amallar bajarishni,
- obyektlar orasida farq qilishni,
- methodlarni obyektga nisbatan qo‘llashni o‘rganadi.
BankAccount
nomli class yozing.
Atributlar:
owner
balance
Metodlar:
deposit(amount)
withdraw(amount)
show_balance()
– hisobdagi mablag‘niprint()
qiladi
📝 Topshiriq:
- 3 ta hisob egasi (obyekt) yarating.
- Har biriga turli summalarda
deposit()
vawithdraw()
amallarini bajaring. - Yakuniy balansni
show_balance()
orqali ko‘rsating.
📌 Maqsad: Obyektlar orasidagi mustaqil holatlarni tushunish.
Book
nomli class yozing.
Atributlar:
title
author
is_read
(False bo‘lib boshlansin)
Metodlar:
mark_as_read()
status()
–"O‘qilgan"
yoki"O‘qilmagan"
deb chiqaradi
📝 Topshiriq:
- Kamida 4 ta
Book
obyekti yarating. - 2 tasini
mark_as_read()
bilan o‘qilgan deb belgilang. - Barcha kitoblar uchun
status()
metodini chaqiring.
📌 Maqsad: Har bir obyektning is_read
holati o‘zgarishini ko‘rish.
Student
nomli class yozing.
Atributlar:
name
age
Metod:
show_info()
– ismi va yoshini chiqaradi
📝 Topshiriq:
- 5 ta
Student
obyektini yarating (turli yoshda) - Eng katta yoshdagi talabani aniqlang (Python
max()
yoki oddiy if bilan) show_info()
metodini chaqirib natijani ko‘rsating.
📌 Maqsad: Obyektlar orasida ma’lumot solishtirishni o‘rganish.
Product
nomli class yozing.
Atributlar:
name
price
in_stock
(True/False)
📝 Topshiriq:
- 5 ta mahsulot yarating.
- Faqat
in_stock == True
bo‘lgan mahsulotlar narxini hisoblang. - Yakuniy natijani
print()
qiling. (Masalan:"Ombordagi mahsulotlar narxi: 274.50"
)
📌 Maqsad: Obyektlar ustida filter, yig‘indi, tahlil qilishni o‘rganish.
📘 Book
nomli class yozing.
Atributlar:
title
author
is_read
– boshlanishida False
Metodlar:
mark_as_read()
– kitobni o‘qilgan deb belgilaydistatus()
–"O‘qilgan"
yoki"O‘qilmagan"
deb chiqaradi
📝 Topshiriq:
- 5 ta
Book
obyekti yarating va ularnibooks
listiga joylang. - 2 ta kitobni
mark_as_read()
bilan belgilang. for
loop orqali barcha kitoblarning holatini chiqarib bering (status()
yordamida).- Faqat o‘qilgan kitoblarning nomlarini alohida chiqarib bering.
📌 Maqsad: List ichida obyektlar bilan ishlash, metodlarni kollektiv qo‘llash.
🏦 BankAccount
nomli class yozing.
Atributlar:
owner
balance
Metod:
show_balance()
– balansniprint()
qiladiget_balance()
– balansni qaytaradi (return)
📝 Topshiriq:
- 5 ta
BankAccount
obyektini yarating. - Ularni
accounts
ro‘yxatiga joylang. for
loop yordamida jami balansni hisoblang.- Jami balansni
print()
qiling.
📌 Maqsad: Obyektlardan qiymat olish (get_balance()
), yig‘ish, va chiqarish.
🛍️ Product
nomli class yozing.
Atributlar:
name
price
category
Metod:
info()
– mahsulot nomi va narxini chiqaradi
📝 Topshiriq:
- 6 ta
Product
obyektini yarating, listga joylang. - List ichidan eng qimmat mahsulotni toping.
- Uning
info()
metodini chaqirib natijani ko‘rsating.
📌 Maqsad: Listdagi obyektlarni solishtirish, eng kattasini aniqlash.