Authors

  • Tojimamatov Israiljon Nurmamatovich
  • Qo’shaqova Dilshoda Robiljon qizi

Author Biographies

  • Tojimamatov Israiljon Nurmamatovich

    Farg‘ona davlat unversiteti oʻqituvchisi

    E-mail: israiltojimamatov@gmail.com

  • Qo’shaqova Dilshoda Robiljon qizi

    Farg‘ona davlat unversiteti talabasi

    E-mail :qoshaqovadilshodahon@gmail.com

DOI:

https://doi.org/10.71337/inlibrary.uz.mead.116656

Keywords:

Python voris sinf voris metod obyektga yo‘naltirilgan dasturlash super funksiyasi kodni qayta ishlatish.

Abstract

Mazkur maqolada Python dasturlash tilida voris sinflar (inheritance) va voris metodlar (inherited methods) tushunchalari yoritilgan. Obyektga yo‘naltirilgan dasturlashning muhim jihatlaridan biri bo‘lgan vorislik mexanizmi orqali dasturiy ta'minotda kodni qayta ishlatish, kengaytirish va modul qilish imkoniyatlari tahlil qilingan. Misollar orqali bir nechta sinflar o‘rtasida meros olish, metodlarni qayta aniqlash (override) va super() funksiyasining vazifasi tushuntiriladi. Ushbu yondashuv zamonaviy dasturlashda strukturaviy va samarali tizimlar yaratishda muhim o‘rin egallaydi.


background image

MODERN EDUCATION AND DEVELOPMENT

Выпуск журнала №-27

Часть–4_Июнь –2025

301

PYTHON DASTURLASH TILIDA VORISLIK

Tojimamatov Israiljon Nurmamatovich

Farg‘ona davlat unversiteti oʻqituvchisi

E-mail:

israiltojimamatov@gmail.com

Qo’shaqova Dilshoda Robiljon qizi

Farg‘ona davlat unversiteti talabasi

E-mail :

qoshaqovadilshodahon@gmail.com

Annotatsiya:Mazkur maqolada Python dasturlash tilida voris sinflar

(inheritance) va voris metodlar (inherited methods) tushunchalari yoritilgan.

Obyektga yo‘naltirilgan dasturlashning muhim jihatlaridan biri bo‘lgan vorislik

mexanizmi orqali dasturiy ta'minotda kodni qayta ishlatish, kengaytirish va modul

qilish imkoniyatlari tahlil qilingan. Misollar orqali bir nechta sinflar o‘rtasida meros

olish, metodlarni qayta aniqlash (override) va super() funksiyasining vazifasi

tushuntiriladi. Ushbu yondashuv zamonaviy dasturlashda strukturaviy va samarali

tizimlar yaratishda muhim o‘rin egallaydi.

Kalit so‘zlar: Python, voris sinf, voris metod, obyektga yo‘naltirilgan

dasturlash, super funksiyasi, kodni qayta ishlatish.

Abstract:This article explores the concepts of class inheritance and inherited

methods in the Python programming language. Inheritance is a core feature of object-

oriented programming, enabling code reuse, extension, and modularization. The

study presents examples of class relationships, method overriding, and the use of the

super() function. This approach is essential for building structured and efficient

software systems in modern development practices.

Keywords: Python, inheritance, methods, object-oriented programming,

super function, code reuse.

Аннотация:В данной статье рассматриваются понятия наследования

классов (inheritance) и унаследованных методов (inherited methods) в языке

программирования Python. Наследование является важной частью объектно-


background image

MODERN EDUCATION AND DEVELOPMENT

Выпуск журнала №-27

Часть–4_Июнь –2025

302

ориентированного

программирования,

обеспечивающей

повторное

использование и расширение кода. Приведены примеры реализации

наследования между классами, переопределения методов и использования

функции super(). Такой подход играет ключевую роль в построении

структурированных и эффективных программных решений.

Ключевые слова: Python, наследование, методы, объектно-

ориентированное программирование, функция super, повторное использование

кода.

Kirish

Hozirgi zamon dasturlash tillari orasida Python o‘zining soddaligi, o‘qish

osonligi va kuchli obyektga yo‘naltirilgan imkoniyatlari bilan ajralib turadi. Ayniqsa,

murakkab tizimlarni modullashtirish, ularni sodda va strukturaviy ko‘rinishda

ifodalashda Python tilining obyektga yo‘naltirilgan xususiyatlari muhim o‘rin tutadi.

Ushbu xususiyatlar ichida

vorislik (inheritance)

va

voris metodlar (inherited

methods)

tushunchasi dasturiy ta’minotni loyihalashda asosiy tushunchalardan biri

hisoblanadi.

Vorislik orqali dasturda mavjud sinfga asoslanib yangi sinf yaratish, kodni

qayta ishlatish, uning ustida kengaytma kiritish imkoniyati yaratiladi. Bu nafaqat

dasturiy kodni soddalashtiradi, balki dasturiy tizimni modullashtirish, texnik xizmat

ko‘rsatish va kengaytirish jarayonlarini ham yengillashtiradi. Mazkur maqolada

vorislik tushunchasining nazariy asoslari, Python dasturlash tilida uni amalga oshirish

usullari, metodlarni qayta aniqlash (override), super() funksiyasi va ko‘p vorislik

(multiple inheritance) kabi jihatlar chuqur tahlil qilinadi. Bu orqali dasturchilar

vorislik imkoniyatlaridan samarali foydalanish va kod sifatini oshirishga qaratilgan

yondashuvlarni o‘zlashtirishlari mumkin.

Obyektga yo‘naltirilgan dasturlash (OOP — Object-Oriented Programming)

— bu dasturlash paradigmasi bo‘lib, u murakkab dasturiy tizimlarni modullarga

ajratish, har bir modulni obyekt sifatida ko‘rib chiqish, va ularni sinflar (class) asosida

modellashtirishga asoslanadi. OOPning to‘rt asosiy prinsipi mavjud:

inkapsulyatsiya

,

abstraktsiya

,

vorislik

va

polimorfizm

. Ushbu maqolada ular


background image

MODERN EDUCATION AND DEVELOPMENT

Выпуск журнала №-27

Часть–4_Июнь –2025

303

ichida vorislik (inheritance) va voris metodlar (inherited methods) konseptual asos

sifatida chuqur tahlil qilinadi.

Vorislik tushunchasi

Vorislik — bu bir sinf (ota sinf, yoki

superclass

) boshqa sinfga (voris sinf,

yoki

subclass

) o‘zining atribut va metodlarini meros qilib berishidir. Bunda voris sinf

ota sinfning barcha funksiyalaridan foydalanadi yoki ularni o‘z ehtiyojiga ko‘ra qayta

aniqlaydi (override). Vorislik orqali dasturiy loyihalarda kodni qayta ishlatish, modul

tuzilmalarni yaratish va murakkab tizimlarni oddiy sinflar orqali boshqarish mumkin

bo‘ladi.

Python dasturlash tilida vorislik quyidagi sintaksis orqali amalga oshiriladi:

class Transport:

def harakatlan(self):

print("Harakatlanmoqda...")

class Avtomobil(Transport):

def signal(self):

print("Bip-bip!")

Bu yerda Avtomobil sinfi Transport sinfidan voris olmoqda. U Transport

sinfidagi harakatlan() metodidan foydalanishi mumkin, shu bilan birga o‘ziga xos

signal() metodiga ham ega.

Metodlarni qayta aniqlash (Method Overriding)

Voris sinf o‘zining ota sinfidagi metodni o‘z ehtiyojiga ko‘ra qayta

aniqlashi mumkin. Bu dasturda polimorfizmni ta’minlashga xizmat qiladi.

class VorisSinf(OtaSinf):

def salom(self):

print("Men voris sinfman!")

Bundan tashqari, super() funksiyasi yordamida voris sinf ota sinfning

metodlarini chaqira oladi. Bu, ayniqsa, konstruktorlar (ya’ni __init__ metodlari) bilan

ishlaganda muhim ahamiyatga ega.

class Ota:

def __init__(self, ism):


background image

MODERN EDUCATION AND DEVELOPMENT

Выпуск журнала №-27

Часть–4_Июнь –2025

304

self.ism = ism

class Bola(Ota):

def __init_ _(self, ism, yosh):

super().__init__(ism)

self.yosh = yosh

Python tilida ko‘p vorislik (multiple inheritance) ham qo‘llab-quvvatlanadi,

ya’ni bir sinf bir nechta sinfdan meros olishi mumkin. Bu yondashuv ehtiyotkorlik

bilan qo‘llanilishi kerak, chunki metodlar zanjiri (MRO — Method Resolution Order)

muammolariga olib kelishi mumkin.

Vorislik dasturiy ta'minotning modulligini oshirish, takrorlanadigan kodni

kamaytirish va loyihani texnik xizmat ko‘rsatishga qulaylashtirish kabi afzalliklarga

ega. Bu esa dasturiy arxitekturaning barqarorligi va rivojlanishiga xizmat qiladi.

Vorislikning turlari

Python tilida vorislikning quyidagi turlari mavjud:

1. Oddiy vorislik (Single Inheritance):Faqat bitta ota klassdan voris olish.

class Hayvon:

def tovush(self):

print("Hayvon tovushi")

class It(Hayvon):

pass

2.Ko‘p martalik vorislik (Multiple Inheritance):Bir nechta ota klasslardan

meros olish.

class A:

pass

class B:

pass

class C(A, B): # C klassi A va B dan voris olgan

pass

Python’da bu holatda Method Resolution Order (MRO) asosida metodlar

tartibi aniqlanadi.


background image

MODERN EDUCATION AND DEVELOPMENT

Выпуск журнала №-27

Часть–4_Июнь –2025

305

3. Ko‘p bosqichli vorislik (Multilevel Inheritance):Farzand klass o‘zi ham

boshqa klassga ota bo‘ladi.

class A:

pass

class B(A):

pass

class C(B):

pass

4.Gibrid vorislik (Hybrid Inheritance):Yuqoridagi turli vorislik turlarining

aralashmasi.

super() funksiyasi va metodlar zanjiri

Python dasturlash tilida super() funksiyasi yordamida farzand klassdan ota

klassning metodlariga to‘g‘ridan-to‘g‘ri murojaat qilish mumkin. Bu, ayniqsa,

konstruktorlarni chaqirishda juda foydalidir.

class Ota:

def init(self):

print("Ota klass")

class Bola(Ota):

def init(self):

super().init() # Ota klass konstruktorini chaqiradi

print("Bola klass")

Metod va atributlarning ustuvorligi

Agar farzand klassda ota klassdagi metodlar qayta aniqlansa, ular ustunlikka

ega bo‘ladi. Bu xususiyatga polimorfizm deyiladi.

class A:

def x(self):

print("A")

class B(A):

def x(self):

print("B")


background image

MODERN EDUCATION AND DEVELOPMENT

Выпуск журнала №-27

Часть–4_Июнь –2025

306

b = B()

b.x() # Natija: B

Bunday holatda farzand klassdagi metod avtomatik ravishda ota klassdagi

metodni almashtiradi. Ammo istalgan vaqtda super() yordamida ota klassdagi

metodni chaqirish mumkin.

Vorislikning afzalliklari

Obyektga yoʻnaltirilgan dasturlash (OOP) konsepsiyasida vorislik (ing.

inheritance) tushunchasi muhim markaziy o‘rinni egallaydi. Vorislik — bu mavjud

klass asosida yangi klass yaratish imkonini beruvchi dasturlash mexanizmi bo‘lib,

yangi klass avvalgi klassning barcha atribut va metodlarini o‘zlashtiradi. Bunday

yondashuv dasturiy ta’minotni modullashtirish, kengaytirish va texnik xizmat

ko‘rsatishni yengillashtirishda muhim rol o‘ynaydi.Vorislikdan foydalanish dasturiy

tizimlarda ko‘p marotaba takrorlanadigan kodlardan xalos bo‘lish, umumiy

funksionallikni bitta markazlashtirilgan ota klassda jamlash va uni boshqa maxsus

klasslarda qayta ishlatish imkonini beradi. Bu esa dasturchiga nafaqat vaqt va kuchni

tejash, balki kodni tushunarli, soddalashgan va texnik xizmat ko‘rsatishga yaroqli

holatda saqlash imkonini beradi.Vorislikning muhim afzalliklaridan biri — kodning

qayta ishlatilishidir. Bu degani, biror klassdagi funksiyalar yoki atributlar boshqa

klasslar uchun ham ayni holatda xizmat qilishi mumkin. Misol uchun, “Hayvon”

nomli umumiy klassda harakat, ovqatlanish kabi umumiy metodlar bo‘lishi mumkin;

ushbu klassdan voris olgan “It”, “Mushuk”, “Quyon” kabi klasslar esa ushbu umumiy

metodlarni o‘zida aks ettiradi va zarur hollarda ularni o‘zgartirib yoki kengaytirib

ishlatadi.Bundan tashqari, vorislik orqali dastur modullashtiriladi — ya’ni kod

mantiqiy bo‘linmalarga ajratiladi. Har bir klass o‘ziga tegishli vazifani bajaradi va bu

modullar o‘zaro ierarxik aloqada bo‘ladi. Bunday strukturaviy yondashuv murakkab

dasturiy tizimlarni soddalashtiradi va har bir komponentni alohida test qilish imkonini

beradi.Yana bir muhim jihat — moslashuvchanlik va kengaytiruvchanlikdir. Dasturiy

tizimlar doimiy rivojlanib boradi, yangi talablar qo‘yiladi. Vorislik bu jarayonni

muammosiz amalga oshirishga yordam beradi. Agar yangi xususiyat yoki metod

kerak bo‘lsa, mavjud klassni o‘zgartirmasdan, undan yangi klass hosil qilish mumkin.


background image

MODERN EDUCATION AND DEVELOPMENT

Выпуск журнала №-27

Часть–4_Июнь –2025

307

Bu prinsip dasturiy arxitekturada ochiq–yopiq printsipi (open-closed principle) deb

ataladi: “dastur kengaytirishga ochiq, lekin o‘zgartirishga yopiq bo‘lishi

kerak.”Shuningdek, vorislikning asosida polimorfizm yotadi. Polimorfizm shuni

anglatadiki, bir xil nomdagi metod har bir farzand klassda o‘ziga xos tarzda ishlashi

mumkin. Bu orqali bitta interfeysga ega bo‘lgan turli klasslar har xil harakat qilishi

ta’minlanadi. Dasturiy nuqtai nazardan, bu murakkab mantiqlarni soddalashtirish va

ko‘p holatlarni bitta funksiya orqali boshqarish imkonini beradi.

Vorislikning foydali jihatlaridan yana biri — texnik xizmat ko‘rsatishning

soddalashuvidir. Agar tizimda muayyan xatolik bo‘lsa, bu odatda ota klassdagi

umumiy metodda yuzaga chiqadi va uni tuzatish farzand klasslarda ham avtomatik

tarzda aks etadi. Bu esa tizimni nazorat qilishni soddalashtiradi, xatoliklarni aniqlash

va ularni tuzatish vaqtini qisqartiradi.Barcha yuqoridagi afzalliklar vorislik

mexanizmini nafaqat texnik, balki metodologik jihatdan ham dasturlashning eng

muhim vositalaridan biriga aylantiradi. Ayniqsa, yirik dasturiy loyihalarda, modul

tizimlarda, interfeysga ega platformalarda, foydalanuvchi rollarini boshqarishda va

real dunyo obyektlarini model qilishda vorislik konsepsiyasi alohida o‘rin egallaydi.

Masalan, ta’lim tizimlari uchun ishlab chiqilayotgan platformada umumiy

Foydalanuvchi klassi yaratiladi. Bu klassdan O‘qituvchi, O‘quvchi, Administrator

kabi maxsus rollar uchun farzand klasslar voris oladi. Har bir rol o‘ziga xos huquq va

imkoniyatlarga ega bo‘ladi. Shuningdek, tijorat ilovalari (masalan, savdo

boshqaruvi)da Mahsulot, Elektron mahsulot, Jismoniy mahsulot kabi klasslar

Mahsulot nomli ota klassdan voris olishi mumkin. Bunday struktura biznes tizimni

modullashtirishda juda foydali.

Xulosa

Zamonaviy dasturlash paradigmasi bo‘lgan obyektga yo‘naltirilgan dasturlash

(OOP) konsepsiyasi dasturiy mahsulotlarni modullashtirish, kengaytirish va

boshqarishni sezilarli darajada yengillashtiradi. Ushbu paradigmaning asosiy

tamoyillaridan biri – vorislik (inheritance) dasturlash jarayonida klasslar o‘rtasidagi

ierarxik tuzilmani shakllantirish, kodni qayta ishlatish va tizimni evolyutsion

rivojlantirish imkonini beradi.


background image

MODERN EDUCATION AND DEVELOPMENT

Выпуск журнала №-27

Часть–4_Июнь –2025

308

Ushbu maqolada Python dasturlash tilida vorislik tushunchasi nazariy va

amaliy jihatdan batafsil yoritildi. Python tilida klasslar orqali vorislikni amalga

oshirish sintaktik jihatdan sodda, lekin imkoniyatlar nuqtayi nazaridan kengdir.

Maqolada vorislik turlari (oddiy, ko‘p martalik, ko‘p bosqichli va gibrid vorislik),

super() funksiyasining ahamiyati, metod ustuvorligi, polimorfizm bilan bog‘liq

mexanizmlar va ular orqali OOP tamoyillarining to‘liq ifodalanishi ko‘rib chiqildi.

Shuningdek,

maqolada

keltirilgan

amaliy

masala

orqali

vorislik

mexanizmlarining dasturda qanday ishlashi aniq misol bilan ko‘rsatib berildi. Bu esa

mavzuni nafaqat nazariy, balki amaliy nuqtai nazardan ham chuqur anglash imkonini

beradi.Umuman olganda, vorislik OOP asosida ishlab chiqilayotgan dasturiy

ta’minotlar uchun funksionallikni kengaytirish, modul tuzilmalarni yaratish va

murakkab tizimlarni soddalashtirib boshqarish vositasi sifatida katta ahamiyatga ega.

Python dasturlash tilining soddaligi va moslashuvchanligi esa bu imkoniyatlardan

to‘liq foydalanish uchun keng yo‘l ochadi.

FOYDALANILGAN ADABIYOTLAR RO‘YHATI

1. Lutz, M. (2013). Learning Python (5th ed.). O'Reilly Media.

2. Martelli, A., Ravenscroft, A., & Ascher, D. (2005). Python Cookbook. O'Reilly

Media.

3. Downey, A. (2015). Think Python: How to Think Like a Computer Scientist. Green

Tea Press.

4. Hetland, M. L. (2017). Beginning Python: From Novice to Professional (3rd ed.).

Apress.

5. Pilgrim, M. (2004). Dive Into Python. Apress.

6. Van Rossum, G., & Drake, F. L. (2009). The Python Language Reference Manual.

Network Theory Ltd.

7. Python Software Foundation. (2024). Python 3.12 documentation. Retrieved from

https://docs.python.org/3.

8. Abdurahmonov, A. (2021). Python dasturlash tili asoslari. Toshkent: Fan va

texnologiya nashriyoti.


background image

MODERN EDUCATION AND DEVELOPMENT

Выпуск журнала №-27

Часть–4_Июнь –2025

309

9. Nishonov, S. va boshqalar. (2020). Dasturlash asoslari (Python misolida).

Toshkent: O‘zbekiston Respublikasi Oliy va o‘rta maxsus ta’lim vazirligi.

10. To‘xtayev, N. (2022). Algoritmlar va Python dasturlash tili. Samarqand: SamDU

nashriyoti.

Most read articles by the same author(s)

Tojimamatov Israiljon Nurmamatovich, Daminova Shohsanam Davlatjon qizi, SHARTLI OPERATORLAR ASOSIDA MASALALAR YECHISH , Modern education and development: Vol. 27 No. 4 (2025)

Tojimamatov Israiljon Nurmamatovich, Muxsinova Sevinchxon Ikromjon qizi, PYTHON DASTURLASH TILIDA LAMBDA IFODALARI, KONVERTATSIYA VA O’ZGARUVCHILAR DOIRASI , Modern education and development: Vol. 27 No. 4 (2025)

Tojimamatov Israiljon Nurmamatovich, Abdusamadova Vasila Elyorjon qizi, PYTHON DASTURIDA SONLAR USTIDA ARIFMETIK AMALLAR , Modern education and development: Vol. 27 No. 4 (2025)

Tojimamatov Israiljon Nurmamatovich, Zokirjonova Xushnozaxon Ulug’bek qizi, MAʼLUMOTLARNI SAQLASH JOYLARI , Modern education and development: Vol. 28 No. 2 (2025)

Tojimamatov Israiljon Nurmamatovich, Muxsinova Sevinchxon Ikromjon qizi, PYTHON DASTURLASH TILIDA LAMBDA IFODALARI, KONVERTATSIYA VA O’ZGARUVCHILAR DOIRASI , Modern education and development: Vol. 27 No. 4 (2025)

Tojimamatov Israiljon Nurmamatovich, Qaxramonova Muxlisa Jumaxo’ja qizi, INKAPSULYATSIYA, ATRIBUTLAR VA XUSUSIYATLAR. VORISIYLIK , Modern education and development: Vol. 27 No. 5 (2025)

Tojimamatov Israiljon Nurmamatovich, O’ktamjonova Nilufar Abdurahmon qizi, KONSTRUKTUR. OBYEKT ATRIBUTINI HOSIL QILISH , Modern education and development: Vol. 27 No. 4 (2025)

Tojimamatov Israiljon Nurmamatovich, Qo’shaqova Dilshoda Robiljon qizi, PYTHON DASTURLASH TILIDA VORISLIK , Modern education and development: Vol. 27 No. 4 (2025)

Tojimamatov Israiljon Nurmamatovich, Daminova Shohsanam Davlatjon qizi, SHARTLI OPERATORLAR ASOSIDA MASALALAR YECHISH , Modern education and development: Vol. 27 No. 4 (2025)

Tojimamatov Israiljon Nurmamatovich, O’ktamjonova Nilufar Abdurahmon qizi, KONSTRUKTUR. OBYEKT ATRIBUTINI HOSIL QILISH , Modern education and development: Vol. 27 No. 4 (2025)

1 2 > >>