Python-да параметрлерді біріктіру
Бір функцияға бір уақытта
аталған және позициялық параметрлерді беруге болады.
Бұл * таңбасының көмегімен жасалады,
ол оң жағында көрсетілген параметрлерді
аталған деп санау керектігін білдіреді,
егер олардың әдепкі мәндерін пайдалану қажет болмаса.
Барлық параметрлерді консольге шығаратын функция жасайық.
data айнымалысы қарапайым
позициялық параметрді білдіреді. Әрі қарай * таңбасынан кейін
екі айнымалы start
және end әдепкі мәндерімен беріледі.
Алайда функцияны шақыру кезінде бұл
айнымалыларды аталған етіп береміз:
def func(data, *, start=0, end=100):
print(data, start, end)
func(1, start=2, end=3)
Кодты орындау нәтижесі:
1 2 3
Егер start айнымалысының әдепкі мәнін алып тастасақ
және сонымен бірге оны аталған параметр ретінде алып тастасақ, онда қате шығады.
Бұл * таңбасының
start-ті аталған
айнымалы ретінде анықтағаны себепінен болады:
def func(data, *, start, end=100):
print(data, start, end)
func(1, 2, end=3) # қате шығарады
Мына кодты орындау нәтижесі қандай болады:
def func(num1, num2, *, num3):
return (num1 + num2) * num3
print(func(2, 4, num3=3))
Мына кодты орындау нәтижесі қандай болады:
def func(num1, *, num2, num3):
return (num1 - num2) / num3
print(func(12, 4, num3=5))
Мына кодты орындау нәтижесі қандай болады:
def func(*, name='user1', age='18'):
return 'Username is ' + name + ' age is ' + age
print(func(name='john'))