eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingPython i argumenty funkcji › Re: Python i argumenty funkcji
  • Data: 2021-02-17 14:50:53
    Temat: Re: Python i argumenty funkcji
    Od: Roman Tyczka <r...@h...you.spammer> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    W dniu 17.02.2021 o 12:40, Maciek Godek pisze:
    >> I teraz dlaczego w wywołaniu metody __init__ parametry są przekazane w
    >> formie jak w definicji czyli *args, **kwargs? W przykładach jakie
    >> widziałem, a także w wywołaniu _getParameter() są już podane zwyczajnie,
    >> czyli: args, kwargs.
    >> Skąd w tym pierwszym wywołaniu i dlaczego są użyte gwiazdki (czyli w
    >> formie takiej jak w definicji metody/funkcji)?
    >
    > Ściśle rzecz biorąc, dlatego, że projektant funkcji _getParameter() tak sobie
    postanowił.
    >
    > Argumenty w Pythonie są pomyślane w taki sposób, że jak masz tę gwiazdkę, to ona
    przechwyci do listy dowolnie wiele argumentów. Na przykład:
    >
    > def list(*x):
    > return x
    >
    > sprawi, że jak wywołamy
    >
    > list(1,2,3)
    >
    > to w wyniku dostaniemy listę
    >
    > (1,2,3)
    >
    > Tak to wygląda w kontekście definicji. Natomiast w kontekście użycia rola gwiazdki
    jest analogiczna, Załóżmy, że mamy taką funkcję:
    >
    > def f(x, y, z):
    > return [x, y, z]
    >
    > i do tego mamy listę L=(1,2,3)
    >
    > Moglibyśmy sobie wywołać funkcję f w taki sposób:
    >
    > f(L[0], L[1], L[2])
    >
    > ale jeśli zamiast tego napiszemy
    >
    > f(*L)
    >
    > to efekt będzie taki sam.
    A czy nie możemy po prostu zawołać:

    f(L)

    ?

    ps. skąd się wzięła powszechnie używana nazwa kwargs? kv to bym jeszcze
    jako key-value rozszyfrował, ale kw?

    --
    pzdr
    Roman

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: