Jaka jest poprawna nazwa operatora *
, jak w przypadku function(*args)
? rozpakować, rozpakować, coś jeszcze?właściwa nazwa dla python * operator?
Odpowiedz
W Rubim i Perlu 6 został nazwany "splat" i myślę, że większość ludzi z tych społeczności zorientuje się, co masz na myśli, jeśli to nazwiesz.
W obiekcie Python tutorial używana jest fraza "rozpakowywanie listy argumentów", która jest długa i opisowa. Nie słyszałem w Pythonie żadnej innej szczególnej nazwy.
Czy istnieje też nazwa '**' lub czy jest to unikatowe w Pythonie? –
ani razu nie słyszałem/widziałem "splat" w około 10 lat używania Pythona. –
W pythonie jest on również używany do ** list argumentów ** pack, więc w tym kontekście powinien on nazywać się ** unsplat **? :) –
Uważam, że jest to najczęściej określane jako "operator splat". Unpacking arguments to, co robi.
Po prostu nazywa się to "*
-operator". Wykonuje rozpakowanie arbitrary argument lists.
To jest najdokładniejsza odpowiedź, a szkoda, że nie została zaakceptowana! – alfasin
@alfasin: Wyrażenie '* '-operator' jest niejednoznaczne, ponieważ' * '- w zależności od kontekstu - może wykonać albo rozszerzenie argumentu, albo mnożenie, które są dwiema różnymi operacjami. – HelloGoodbye
@HelloGoodbye i naprawdę nie jest trudno zrozumieć, który to jest z kontekstu, w którym się znajduje. – alfasin
Mówię "gwiazda-args", a Python wydaje się, że ludzie wiedzą co mam na myśli.
**
jest trudniejsze - Myślę, że tylko „qargs” ponieważ jest zwykle używany jako **kw
lub **kwargs
Po prostu mówię 'kwargs', chociaż to tak naprawdę nie odnosi się do operatora sam przypuszczam. –
ja to nazywam „pozycyjny ekspansja”, w przeciwieństwie do **
który nazywam „ekspansja słowo kluczowe”.
podwójna ikona, haha. –
Nazywam * args "star args" lub "varargs" i ** kwargs "słowo kluczowe args".
Można również wywołać *
zbierać parametr (jeśli są stosowane w definicji argumenty Function) lub operator rozrzut (gdy jest stosowany w funkcji wywołania).
Jak widać tutaj: Think Python/Tuples/Variable-length argument tuples.
- 1. python? (warunkowy/ternarny) operator dla zadań
- 2. Właściwa kanonizacja XML dla SAML
- 3. Python operator przypisania asocjatywność
- 4. Python operator trójargumentowy
- 5. ++ operator w języku Python
- 6. Python argparse: nazwa parametry
- 7. Jaka jest właściwa gramatyka dla tego języka?
- 8. Właściwa metoda appDelegate dla początkującego Flurry?
- 9. Python Boolean nazwa nazywania czytelności
- 10. Alias nazwa hosta dla localhost
- 11. Python logger dynamiczna nazwa pliku
- 12. „jest” - operator dla typu
- 13. sizeof() operator dla typów
- 14. Nazwa użytkownika dla HackageDB?
- 15. Właściwa inicjalizacji inteligentne kursory tablicy
- 16. Python podczas pętli, operator i (&) nie działa
- 17. Przeciążenie operator wyjścia dla tablic
- 18. + operator dla String w Javie
- 19. Ternary operator dla NumPy ndarray?
- 20. Operator% dla BigInteger w java
- 21. operator << dla QString
- 22. Projektowanie klasy PHP. Właściwa droga
- 23. Właściwa konfiguracja dla zrównoważonej sieci, która wymaga lepkich sesji?
- 24. Właściwa obsługa dla ActionBara na telefonach za pomocą przycisków menu?
- 25. Objective-C/Cocoa: Właściwa konstrukcja dla delegatów i kontrolerów
- 26. Właściwa metoda dla obiektów wieloznacznych w GNU Make
- 27. python: NameError: globalna nazwa”...„nie jest zdefiniowana
- 28. python-pylint „C0103: Nieprawidłowa nazwa stałej
- 29. Python NameError: nazwa 'include' nie jest zdefiniowana
- 30. python NameError: nazwa 'file' nie jest zdefiniowana
Javascript ma odpowiednik ** spread ** '...' operator. –