Pytania otagowane jako generator

Generator jest uogólnieniem podprogramu, używanym głównie w celu uproszczenia pisania iteratorów. Instrukcja yield w generatorze nie określa procedury, do której należy przejść, ale raczej przekazuje wartość z powrotem do procedury nadrzędnej.

30
Do czego służy słowo kluczowe „dochód”?
Jakie jest użycie yieldsłowa kluczowego w Pythonie i co robi? Na przykład próbuję zrozumieć ten kod 1 : def _get_child_candidates(self, distance, min_dist, max_dist): if self._leftchild and distance - max_dist < self._median: yield self._leftchild if self._rightchild and distance + max_dist >= self._median: yield self._rightchild A to jest osoba dzwoniąca: result, candidates …



8
Ruby on Rails generuje pole model: typ - jakie są opcje dla pola: typ?
Próbuję wygenerować nowy model i zapomnieć o składni odwoływania się do identyfikatora innego modelu. Sam bym to sprawdził, ale nie znalazłem wśród wszystkich moich linków dokumentacji Ruby on Rails, jak znaleźć ostateczne źródło. $ rails g model Item name:string description:text(i tu albo reference:productalbo references:product). Ale lepszym pytaniem jest, gdzie i …

11
Leniwa metoda odczytu dużego pliku w Pythonie?
Mam bardzo duży plik 4 GB i kiedy próbuję go odczytać, komputer zawiesza się. Więc chcę czytać go kawałek po kawałku, a po przetworzeniu każdego elementu przechowywać przetworzony kawałek w innym pliku i czytać następny kawałek. Czy istnieje jakaś metoda na yieldte elementy? Chciałbym mieć leniwą metodę .


8
Co oznacza wydajność w PHP?
Niedawno natknąłem się na ten kod: function xrange($min, $max) { for ($i = $min; $i <= $max; $i++) { yield $i; } } Nigdy wcześniej nie widziałem tego yieldsłowa kluczowego. Próbuję uruchomić kod Błąd analizy: błąd składni, nieoczekiwany T_VARIABLE w linii x Czym jest to yieldsłowo kluczowe? Czy to w …

12
Zrozumienie generatorów w Pythonie
W tej chwili czytam książkę kucharską Pythona i obecnie patrzę na generatory. Trudno mi się odwrócić. Skoro pochodzę z języka Java, czy istnieje odpowiednik języka Java? Książka mówiła o „producencie / konsumentie”, ale kiedy słyszę, że myślę o wątkach. Co to jest generator i dlaczego miałbyś go używać? Oczywiście bez …
218 python  generator 


7
Jak wybrać tylko jeden przedmiot z generatora?
Mam funkcję generatora, jak poniżej: def myfunct(): ... yield result Zwykłym sposobem wywołania tej funkcji byłoby: for r in myfunct(): dostuff(r) Moje pytanie: czy istnieje sposób na uzyskanie tylko jednego elementu z generatora, kiedy tylko chcę? Na przykład chciałbym zrobić coś takiego: while True: ... if something: my_element = pick_just_one_element(myfunct()) …

11
Jak połączyć dwa generatory w Pythonie?
Chcę zmienić następujący kod for directory, dirs, files in os.walk(directory_1): do_something() for directory, dirs, files in os.walk(directory_2): do_something() do tego kodu: for directory, dirs, files in os.walk(directory_1) + os.walk(directory_2): do_something() Dostaję błąd: nieobsługiwane typy operandów dla +: „generator” i „generator” Jak połączyć dwa generatory w Pythonie?
187 python  generator 

5
Jak zbudować tablicę numpy z generatora?
Jak mogę zbudować tablicę numpy z obiektu generatora? Pozwólcie, że zilustruję problem: >>> import numpy >>> def gimme(): ... for x in xrange(10): ... yield x ... >>> gimme() <generator object at 0x28a1758> >>> list(gimme()) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> numpy.array(xrange(10)) array([0, 1, 2, …
166 python  numpy  generator 

9
Jak sprawdzić, czy obiekt jest obiektem generatora w Pythonie?
Jak w Pythonie sprawdzić, czy obiekt jest obiektem generatora? Próbuję tego - >>> type(myobject, generator) podaje błąd - Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name 'generator' is not defined (Wiem, że mogę sprawdzić, czy obiekt ma nextmetodę, aby był generatorem, ale chcę mieć jakiś …
157 python  generator 


17
Resetowanie obiektu generatora w Pythonie
Mam obiekt generatora zwrócony przez wielokrotną wydajność. Przygotowanie do wywołania tego generatora jest raczej czasochłonną operacją. Dlatego chcę kilka razy ponownie użyć generatora. y = FunctionWithYield() for x in y: print(x) #here must be something to reset 'y' for x in y: print(x) Oczywiście myślę o skopiowaniu treści na prostą …
153 python  generator  yield 

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.