Kombinimi i Parametrave në Python
Në të njëjtin funksion mund të kaloni njëkohësisht
parametra të emërtuar dhe pozicional.
Kjo bëhet duke përdorur simbolin *,
i cili tregon se parametrat e specifikuar
në të djathtë të tij duhet të konsiderohen si të emërtuar,
nëse vlerat e tyre parazgjedhur nuk duhet
të përdoren.
Le të krijojmë një funksion që do të
shfaqë të gjithë parametrat në konsol. Ndryshorja
data do të tregojë një parametër
pozicional të zakonshëm. Më pas pas simbolit
* vendosen dy variabla start
dhe end me vlera parazgjedhje.
Sidoqoftë, kur thirrim funksionin, i bëjmë këto
variabla të emërtuara:
def func(data, *, start=0, end=100):
print(data, start, end)
func(1, start=2, end=3)
Rezultati i ekzekutimit të kodit:
1 2 3
Nëse hiqni vlerën parazgjedhje të ndryshores
start dhe në të njëjtën kohë e hiqni atë si
parametër të emërtuar, do të shfaqet një gabim.
Kjo ndodh sepse simboli *
tashmë e ka përcaktuar start si një variabël
të emërtuar:
def func(data, *, start, end=100):
print(data, start, end)
func(1, 2, end=3) # do të shfaqë gabim
Cili do të jetë rezultati i ekzekutimit të kodit në vijim:
def func(num1, num2, *, num3):
return (num1 + num2) * num3
print(func(2, 4, num3=3))
Cili do të jetë rezultati i ekzekutimit të kodit në vijim:
def func(num1, *, num2, num3):
return (num1 - num2) / num3
print(func(12, 4, num3=5))
Cili do të jetë rezultati i ekzekutimit të kodit në vijim:
def func(*, name='user1', age='18'):
return 'Username is ' + name + ' age is ' + age
print(func(name='john'))