Pytania otagowane jako yield

yield to (1) słowo kluczowe, które ułatwia tworzenie funkcji generatora, (2) instrukcja Ruby do przenoszenia kontroli z jednego programu do drugiego, (3) instrukcja Java używana do uzyskiwania wartości z wyrażenia przełączającego.

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 …

17
Do czego służy słowo kluczowe wydajności w języku C #?
W pytaniu Jak mogę ujawnić tylko fragment IList <> jedna z odpowiedzi zawierała następujący fragment kodu: IEnumerable<object> FilteredList() { foreach(object item in FullList) { if(IsItemInPartialList(item)) yield return item; } } Co tam robi słowo kluczowe wydajności? Widziałem to w kilku miejscach i jeszcze jedno pytanie, ale nie do końca zrozumiałem, …
828 c#  yield 





8
IEnumerable and Recursion using return return
Mam IEnumerable<T>metodę, której używam do znajdowania formantów na stronie WebForms. Ta metoda jest rekurencyjna i mam pewne problemy ze zwróceniem żądanego typu, gdy yield returnzwraca wartość wywołania rekurencyjnego. Mój kod wygląda następująco: public static IEnumerable<Control> GetDeepControlsByType<T>(this Control control) { foreach(Control c in control.Controls) { if (c is T) { yield …


8
Po co używać słowa kluczowego yield, skoro wystarczy zwykły IEnumerable?
Biorąc pod uwagę ten kod: IEnumerable<object> FilteredList() { foreach( object item in FullList ) { if( IsItemInPartialList( item ) ) yield return item; } } Dlaczego nie miałbym tego po prostu zakodować w ten sposób ?: IEnumerable<object> FilteredList() { var list = new List<object>(); foreach( object item in FullList ) …
171 c#  yield 

6
Zwróć wszystkie wyliczalne z wydajnością na raz; bez zapętlania
Mam następującą funkcję, aby uzyskać błędy walidacji karty. Moje pytanie dotyczy radzenia sobie z GetErrors. Obie metody mają ten sam typ zwrotu IEnumerable<ErrorInfo>. private static IEnumerable<ErrorInfo> GetErrors(Card card) { var errors = GetMoreErrors(card); foreach (var e in errors) yield return e; // further yield returns for more validation errors } …

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 

12
Odpowiednik C ++ do wzorca generatora Pythona
Mam przykładowy kod w Pythonie, który muszę naśladować w C ++. Nie potrzebuję żadnego konkretnego rozwiązania (np. Rozwiązania oparte na wspólnych rutynach wydajności, chociaż byłyby one również akceptowalnymi odpowiedziami), po prostu muszę w jakiś sposób odtworzyć semantykę. Pyton Jest to podstawowy generator sekwencji, wyraźnie zbyt duży, aby przechowywać zmaterializowaną wersję. …



8
Python: wyrażenie generatora a wydajność
Czy w Pythonie jest jakaś różnica między tworzeniem obiektu generatora za pomocą wyrażenia generatora a użyciem instrukcji yield ? Korzystanie z wydajności : def Generator(x, y): for i in xrange(x): for j in xrange(y): yield(i, j) Korzystanie z wyrażenia generatora : def Generator(x, y): return ((i, j) for i in …

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.