⊗pyPmFnPC 14 of 129 menu

Комбиниране на параметри в 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'))
Български
AfrikaansAzərbaycanবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние използваме бисквитки за работата на сайта, анализ и персонализация. Обработката на данни се извършва в съответствие с Политика за поверителност.
приемам всички настройки отхвърляне