Авторы

  • Israil Tojimamatov
    Farg‘ona davlat universiteti amaliy matematika va informatika kafedrasi katta o‘qituvchisi
  • Samandar Mo‘ydinjonov
    Farg‘ona Davlat Universtiteti 3- kurs talabasi

DOI:

https://doi.org/10.71337/inlibrary.uz.icas.113150

Ключевые слова:

Python funksiya parametr argument default qiymat keyword arguments args kwargs modullashtirish dasturlash asoslari.

Аннотация

Ushbu maqolada Python dasturlash tilidagi funksiyalar tushunchasi batafsil tahlil qilinadi. Funksiyaning yaratilishi, parametrlar va argumentlar bilan ishlash, default qiymatlar, nomlangan argumentlar, shuningdek args va kwargs mexanizmlarining vazifasi nazariy va amaliy misollar asosida yoritilgan. Funksiyalar orqali kodni modullashtirish, takroriylikni kamaytirish va dastur tuzilmasini soddalashtirishning afzalliklari tahlil qilingan. Maqola Python dasturini samarali va optimallashtirilgan holda yozishni istagan boshlovchi va o‘rta darajadagi dasturchilar uchun mo‘ljallangan.


background image

МЕЖДУНАРОДНАЯ КОНФЕРЕНЦИЯ

АКАДЕМИЧЕСКИХ НАУК

124

PYTHON DASTURLASH TILIDA FUNKSIYALAR

Tojimamatov Israil Nurmamatovich

Farg‘ona davlat universiteti amaliy matematika

va informatika kafedrasi katta o‘qituvchisi

israiltojimamatov@gmail.com

Mo‘ydinjonov Samandar O‘tkirjon o‘g‘li

Farg‘ona Davlat Universtiteti 3- kurs talabasi

Samandar6420@gmail.com

https://doi.org/10.5281/zenodo.15718129

Annotatsiya

Ushbu maqolada Python dasturlash tilidagi funksiyalar tushunchasi batafsil

tahlil qilinadi. Funksiyaning yaratilishi, parametrlar va argumentlar bilan
ishlash, default qiymatlar, nomlangan argumentlar, shuningdek

args

va

kwargs

mexanizmlarining vazifasi nazariy va amaliy misollar asosida yoritilgan.
Funksiyalar orqali kodni modullashtirish, takroriylikni kamaytirish va dastur
tuzilmasini soddalashtirishning afzalliklari tahlil qilingan. Maqola Python
dasturini samarali va optimallashtirilgan holda yozishni istagan boshlovchi va
o‘rta darajadagi dasturchilar uchun mo‘ljallangan.

Kalit so‘zlar

Python, funksiya, parametr, argument, default qiymat, keyword arguments,

args, kwargs, modullashtirish, dasturlash asoslari.

Annotation

This article provides a detailed analysis of the concept of functions in the Python
programming language. The creation of functions, working with parameters and
arguments, default values, keyword arguments, as well as the use of args and
kwargs mechanisms are explained through theoretical and practical examples.
The advantages of modularizing code, reducing repetition, and simplifying
program structure through functions are examined. The article is intended for
beginner and intermediate-level programmers who aim to write efficient and
optimized Python code.

Keywords

Python, function, parameter, argument, default value, keyword arguments, args,
kwargs, modularization, programming basics.

Аннотация

В данной статье подробно анализируется концепция функций в языке
программирования Python. Рассматриваются создание функций, работа с
параметрами и аргументами, значения по умолчанию, именованные
аргументы, а также механизмы args и kwargs на основе теоретических и


background image

МЕЖДУНАРОДНАЯ КОНФЕРЕНЦИЯ

АКАДЕМИЧЕСКИХ НАУК

125

практических примеров. Анализируются преимущества модульности кода,
уменьшения повторений и упрощения структуры программы с помощью
функций. Статья предназначена для начинающих и программистов
среднего уровня, стремящихся писать эффективный и оптимизированный
код на Python.

Ключевые слова

Python, функция, параметр, аргумент, значение по умолчанию,

именованные

аргументы,

args,

kwargs,

модульность,

основы

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

Zamonaviy dasturlash tillarining ko‘pchiligida mavjud bo‘lgan muhim

tushuncha — bu

funksiya

. U dastur ichida aniq bir vazifani bajaruvchi kod

blokidir. Dasturlashda funksiyalar yordamida kod qismlarini qayta ishlatish,
murakkab masalalarni soddalashtirish va dasturiy loyihani modul ko‘rinishida
qurish mumkin bo‘ladi.

Python tilida funksiyalar alohida o‘rin egallaydi. Ularning sintaksisi

soddaligi, ishlatishdagi qulayliklari va quvvatli imkoniyatlari tufayli Python’da
funksiyalar nafaqat kichik vazifalarni, balki butun tizimni boshqarishda ham
qo‘llaniladi.

Ushbu maqolada Python tilidagi funksiyalar haqida asosiy nazariy bilimlar,

sintaktik qoidalar va real hayotdagi oddiy amaliy misollar orqali tushuncha
beriladi. Maqola Python’ni endi o‘rganayotgan dasturchilar, talaba-yoshlar va bu
tilni mukammal egallashni istovchilar uchun mo‘ljallangan.

2. Python tilida funksiyalar haqida umumiy tushuncha

Python dasturlash tilida

funksiya

— bu biror muayyan vazifani bajaruvchi

kod blokidir. Funksiyalarni yaratish orqali kodni qismlarga ajratish, uni
tushunarli va boshqariladigan holga keltirish mumkin. Bunday yondashuv
dasturchiga

modullik

,

takroriy koddan qochish

va

testlashni osonlashtirish

kabi afzalliklarni beradi.

Python’da funksiyalar

def

kalit so‘zi yordamida aniqlanadi. Har bir funksiya

nomga ega bo‘lishi, kerakli parametrlarni qabul qilishi va ehtimoliy natijani
qaytarishi mumkin. Funksiya yozilishi quyidagicha boshlanadi:

python
KopierenBearbeiten
def salom_ber():
print("Salom, foydalanuvchi!")
Funksiyani chaqirish (ya’ni ishga tushurish) uchun uning nomi va qavslar

yoziladi:


background image

МЕЖДУНАРОДНАЯ КОНФЕРЕНЦИЯ

АКАДЕМИЧЕСКИХ НАУК

126

python
KopierenBearbeiten
salom_ber()
Funksiyalar dastur ishini soddalashtiradi. Masalan, bir amalni 10 marta

yozish o‘rniga, bir marta funksiya qilib yozib, uni kerakli joyda chaqirish
mumkin. Bu dasturchining vaqtini tejaydi, kodni soddalashtiradi va xatoliklar
ehtimolini kamaytiradi.

Argumentlar va parametrlar

Python funksiyalari yordamida

ma’lumotlar uzatish

imkoniyati mavjud.

Bunda ikki muhim tushuncha mavjud:

parametrlar (parameters)

va

argumentlar (arguments)

.

Parametrlar

— bu funksiyani e’lon qilishda yoziladigan o‘zgaruvchilar.

Ular funksiyaga qanday ma’lumotlar kiritilishini belgilaydi.

Argumentlar

— bu funksiyani chaqirishda funksiyaga uzatiladigan

haqiqiy qiymatlar.

Masalan:
python
KopierenBearbeiten
def salom_ber(ism):
print(f"Salom, {ism}!")
Bu yerda ism — parametr. Endi funksiyani chaqirib, unga argument

uzatamiz:

python
KopierenBearbeiten
salom_ber("Samandar")
Natija:
KopierenBearbeiten
Salom, Samandar!
Bitta funksiyada bir nechta parametrlar bo‘lishi mumkin:
python
KopierenBearbeiten
def ism_yosh(ism, yosh):
print(f"{ism} {yosh} yoshda.")
Va chaqirilishi:
python
KopierenBearbeiten
ism_yosh("Olim", 25)


background image

МЕЖДУНАРОДНАЯ КОНФЕРЕНЦИЯ

АКАДЕМИЧЕСКИХ НАУК

127

Bu yondashuv yordamida bir xil funksiyani har xil qiymatlar bilan ishlatish

mumkin bo‘ladi. Bu esa

kodni qayta ishlatish

prinsipini yanada samaraliroq

qiladi.

Muhim eslatma

: Python’da funksiyaga berilgan argumentlar

tartib bilan

uzatiladi. Shuning uchun chaqirishdagi qiymatlar e’lon qilingan parametrlar
tartibiga mos bo‘lishi zarur.

Funksiyalar orqali parametrlar bilan ishlash — dasturlashda

ma’lumot

oqimini boshqarish

degan tamoyilni anglatadi. Bu orqali biror qiymatni

kiritish, uni qayta ishlash va natijani chiqarish mumkin bo‘ladi.

Standart qiymatlar (Default arguments)

Python funksiyalarida har bir parametrga

standart qiymat

berish mumkin.

Bu shuni anglatadiki, agar foydalanuvchi funksiyani chaqirganda ba’zi
argumentlarni bermasa ham, funksiya avtomatik tarzda belgilangan qiymatdan
foydalanadi.

Bu imkoniyat kodni

moslashuvchan va xavfsiz

qiladi, chunki har bir

chaqirishda barcha argumentlarni majburan kiritish talab etilmaydi.

Sintaksis:

python
KopierenBearbeiten
def funksiya_nomi(parametr=standart_qiymat):
# amal

Oddiy misol:

python
KopierenBearbeiten
def salom_ber(ism="foydalanuvchi"):
print(f"Salom, {ism}!")
Ushbu funksiyani quyidagicha chaqirish mumkin:
python
KopierenBearbeiten
salom_ber() # Salom, foydalanuvchi!
salom_ber("Samandar") # Salom, Samandar!
Yuqoridagi misolda, agar argument uzatilmasa, ism nomli parametr

avtomatik tarzda "foydalanuvchi" qiymatini oladi.

Ko‘p parametrli funksiya:

python
KopierenBearbeiten
def foydalanuvchi_info(ism, davlat="O‘zbekiston"):


background image

МЕЖДУНАРОДНАЯ КОНФЕРЕНЦИЯ

АКАДЕМИЧЕСКИХ НАУК

128

print(f"{ism} {davlat}da yashaydi.")
python
KopierenBearbeiten
foydalanuvchi_info("Ali") # Ali O‘zbekiston da yashaydi.
foydalanuvchi_info("Lena", "Germaniya") # Lena Germaniya da yashaydi.

Muhim qoidalar:

Avval majburiy parametrlar yoziladi, keyin default qiymatli parametrlar.

Aks holda Python SyntaxError beradi.

python
KopierenBearbeiten
# Noto‘g‘ri:
# def xato(parametr1=10, parametr2):
# To‘g‘ri:
def togri(parametr1, parametr2=10):

Nomlangan argumentlar (Keyword arguments)

Python funksiyalarini chaqirishda argumentlar

tartib bo‘yicha

(positional

arguments) yoki

nomi bilan

(keyword arguments) uzatilishi mumkin.

Nomlangan argumentlar funksiyani chaqirishda har bir parametrga aniq nom
orqali qiymat berishni anglatadi. Bu yondashuv kodni

ancha o‘qilishi oson

va

xatoga kamroq moyil

qiladi.

Oddiy tartibli chaqirish:

python
KopierenBearbeiten
def foydalanuvchi(ism, yosh):
print(f"{ism} {yosh} yoshda.")
foydalanuvchi("Samandar", 21)
Bu yerda "Samandar" ismga, 21 esa yoshga to‘g‘ri keladi —

pozitsion tartib

bo‘yicha.

Nomlangan argumentlar orqali chaqirish:

python
KopierenBearbeiten
foydalanuvchi(yosh=21, ism="Samandar")
Bu usulda:

Argumentlar tartibi muhim emas.

Har bir parametrga aniq nom orqali qiymat uzatiladi.

Kod tushunarliroq va xatoga chidamli bo‘ladi.

Aralashtirilgan yondashuv:


background image

МЕЖДУНАРОДНАЯ КОНФЕРЕНЦИЯ

АКАДЕМИЧЕСКИХ НАУК

129

Python’da siz bir funksiyani chaqirishda pozitsion va keyword

argumentlarni

aralashtirib

yozishingiz mumkin, lekin

pozitsion argumentlar

oldin yozilishi kerak

:

python
KopierenBearbeiten
foydalanuvchi("Ali", yosh=20) # To‘g‘ri
# foydalanuvchi(ism="Ali", 20) Xato — keyworddan keyin pozitsion

bo‘lishi mumkin emas

Afzalliklari:

Katta funksiyalarda argumentlar ma’nosini chalkashtirmaslik
Kodni dokumentatsiyasiz ham tushunish mumkin bo‘ladiDefault

argumentlar bilan birga ishlatishga mos

*args va **kwargs bilan ishlash

Python funksiyalari ba’zida

o‘zgaruvchan sonli argumentlar

bilan ishlashi

talab etiladi. Bunday holatlarda *args va **kwargs mexanizmlari juda foydali
bo‘ladi.

*args — ixtiyoriy pozitsion argumentlar

Agar funksiyaga

cheksiz miqdorda tartibli (pozitsion) argumentlar

uzatmoqchi bo‘lsangiz, *argsdan foydalanasiz. Bu argumentlar

tuple (kortej)

shaklida funksiyaga uzatiladi.

Misol:

python
KopierenBearbeiten
def yigindi(*sonlar):
print(sonlar)
return sum(sonlar)
print(yigindi(1, 2, 3)) # 6
Bu yerda *sonlar — bitta parametrga bir nechta qiymatlarni uzatish

imkonini berdi.

**kwargs — ixtiyoriy nomlangan argumentlar

Agar siz funksiyaga

istalgancha nomlangan (keyword) argumentlar

uzatmoqchi bo‘lsangiz, **kwargs ishlatiladi. Bu argumentlar funksiyaga

lug‘at

(dictionary)

shaklida keladi.

Misol:

python
KopierenBearbeiten
def foydalanuvchi_haqida(**malumot):


background image

МЕЖДУНАРОДНАЯ КОНФЕРЕНЦИЯ

АКАДЕМИЧЕСКИХ НАУК

130

for kalit, qiymat in malumot.items():
print(f"{kalit}: {qiymat}")

foydalanuvchi_haqida(ism="Ali", yosh=23, davlat="O‘zbekiston")
Natija:
makefile
KopierenBearbeiten
ism: Ali
yosh: 23
davlat: O‘zbekiston

Aralashtirib ishlatish

Siz *args va **kwargs ni bitta funksiyada ham ishlatishingiz mumkin:
python
KopierenBearbeiten
def demo(x, *args, **kwargs):
print(f"x = {x}")
print(f"args = {args}")
print(f"kwargs = {kwargs}")

demo(1, 2, 3, 4, ism="Samandar", yosh=21)

Natija:
ini
KopierenBearbeiten
x = 1
args = (2, 3, 4)
kwargs = {'ism': 'Samandar', 'yosh': 21}

Xulosa

Python dasturlash tilida funksiyalar — bu nafaqat texnik vosita, balki

dasturiy fikrlashning markaziy elementi

dir. Ular yordamida kodni qismlarga

bo‘lish, strukturalashtirish va qayta ishlatish mumkin bo‘ladi. Maqolada ko‘rib
chiqilgan jihatlar — funksiyalarni yaratish, ularga parametr va argumentlar
uzatish, default qiymatlar, nomlangan argumentlar, *args va **kwargs kabi
o‘zgaruvchan strukturalar — barchasi

ko‘p funksiyali va moslashuvchan

dasturlar

tuzishga xizmat qiladi.

Funksiyalarni to‘g‘ri tushunish va samarali qo‘llash: Kodni

sodda va

tushunarli

qiladi,

xatolik ehtimolini kamaytiradi

,t

estlash va xatolikni

ajratib olishni

osonlashtiradi,loyihalarda

modullik

va

masshtablilik

ni

ta’minlaydi.


background image

МЕЖДУНАРОДНАЯ КОНФЕРЕНЦИЯ

АКАДЕМИЧЕСКИХ НАУК

131

Yuqorida tahlil qilingan jihatlar — har bir Python dasturchisi o‘zlashtirishi

lozim bo‘lgan asosiy bilimlar qatoriga kiradi. Ular dasturchining o‘z ishini
nafaqat tezroq, balki puxta bajarishiga ham imkon yaratadi.

Python tilida muvaffaqiyatli dasturlash uchun funksiyalarni chuqur anglash

— bu ilk qadam. Va aynan shu qadamingiz keyingi katta loyihalarga yo‘l ochadi.

Foydalanilgan adabiyotlar:

1.

Python Software Foundation.

2.

The Python Tutorial, Official Python Documentation

3.

URL: https://docs.python.org/3/tutorial/index.html

4.

Lutz, Mark.

5.

Learning Python, 5th Edition. O'Reilly Media, 2013.

6.

(Keng qamrovli qo‘llanma, funksiyalar haqida chuqur tushuntiradi)

7.

Matthes, Eric.

8.

Python Crash Course: A Hands-On, Project-Based Introduction to

Programming. No Starch Press, 2019.
9.

(Boshlovchilar uchun ideal qo‘llanma)

10.

Beazley, David M.

11.

Python Cookbook, 3rd Edition. O'Reilly Media, 2013.

12.

(Amaliy kodlar asosidagi chuqur tahlillar, *args, **kwargs va boshqa ilg‘or

mavzular keltirilgan)
13.

Real Python platformasi.

14.

Veb-portal: https://realpython.com

15.

(Funksiyalar va boshqa Python tushunchalari bo‘yicha amaliy maqolalar)

16.

W3Schools Python Functions Tutorial

17.

URL: https://www.w3schools.com/python/python_functions.asp

18.

Stack Overflow (stackoverflow.com)

19.

(Real muammolar va ularning amaliy yechimlari, foydalanuvchilarning

savol-javoblari orqali funksiyalarni turli kontekstlarda tushunishga yordam
beradi)

Библиографические ссылки

Python Software Foundation.

The Python Tutorial, Official Python Documentation

Lutz, Mark.

Learning Python, 5th Edition. O'Reilly Media, 2013.

(Keng qamrovli qo‘llanma, funksiyalar haqida chuqur tushuntiradi)

Matthes, Eric.

Python Crash Course: A Hands-On, Project-Based Introduction to Programming. No Starch Press, 2019.

(Boshlovchilar uchun ideal qo‘llanma)

Beazley, David M.

Python Cookbook, 3rd Edition. O'Reilly Media, 2013.

(Amaliy kodlar asosidagi chuqur tahlillar, *args, **kwargs va boshqa ilg‘or mavzular keltirilgan)

Real Python platformasi.

(Funksiyalar va boshqa Python tushunchalari bo‘yicha amaliy maqolalar)

W3Schools Python Functions Tutorial

Stack Overflow (stackoverflow.com)

(Real muammolar va ularning amaliy yechimlari, foydalanuvchilarning savol-javoblari orqali funksiyalarni turli kontekstlarda tushunishga yordam beradi)

Наиболее читаемые статьи этого автора (авторов)