Запитання з тегом «iterator»

4
Чому ітератори в Python створюють виняток?
Ось синтаксис ітераторів на Java (дещо схожий синтаксис у C #): Iterator it = sequence.iterator(); while (it.hasNext()) { System.out.println(it.next()); } Що має сенс. Ось еквівалентний синтаксис у Python: it = iter(sequence) while True: try: value = it.next() except StopIteration: break print(value) Я вважав, що Винятки повинні використовуватися лише у, виняткових …

6
Чому Python робить лише копію окремого елемента під час ітерації списку?
Я просто зрозумів, що в Python, якщо хто пише for i in a: i += 1 Елементи оригінального списку aнасправді не впливатимуть, оскільки змінна iвиявляється просто копією оригінального елемента в a. Щоб змінити оригінальний елемент, for index, i in enumerate(a): a[index] += 1 знадобиться. Я був дуже здивований такою поведінкою. …
31 python  list  iterator 

6
Ітераторська схема - чому важливо не піддавати внутрішнього представлення?
Я читаю основи дизайну моделей C # . Я зараз читаю про шаблон ітератора. Я повністю розумію, як реалізувати, але не розумію важливості чи не бачу випадку використання. У книзі наведено приклад, де комусь потрібно отримати список об’єктів. Вони могли це зробити, оголивши публічну власність, таку як IList<T>або Array. Книга …

1
Одиничні тести: відкладені твердження з Linq
Чи нормально додавати такі відкладені твердження var actualKittens = actualKittens.Select(kitten => { Assert.IsСute(kitten); return kitten }); Чому? Тож я можу повторити лише один раз навіть із заявами, що очікують матеріалізованої колекції, наприклад: CollectionAssert.AreEquivalent(expectedKittens, actualKittens.ToList()); А також це може бути не просто Select, а метод з визначеним ітератором, що має багато …

1
Чи дійсні функції генератора у функціональному програмуванні?
Питання: Чи порушують генератори парадигму функціонального програмування? Чому або чому ні? Якщо так, то чи можна використовувати генератори у функціональному програмуванні? Розглянемо наступне: function * downCounter(maxValue) { yield maxValue; yield * downCounter(maxValue > 0 ? maxValue - 1 : 0); } let counter = downCounter(26); counter.next().value; // 26 counter.next().value; // …

4
Чи є у ітератора договір, що не має руйнування?
Скажімо, я розробляю власну структуру даних, як стек або чергу (наприклад, може бути якась інша довільна впорядкована колекція, що має логічний еквівалент pushта popметоди - тобто деструктивні методи доступу). Якщо ви впроваджували ітератор (конкретно в .NET IEnumerable<T>) над цією колекцією, що з’явилася на кожній ітерації, чи не порушив би цей …

4
C ++ Iterator, чому немає базового класу Iterator, від якого успадковуються всі ітератори
Я навчаюсь на іспиті, і у мене є питання, на яке я намагаюся дати і відповісти. Чому не існує базового класу ітератора, від якого успадковуються всі інші ітератори? Я думаю, мій учитель посилається на ієрархічну структуру з посилання на cpp " http://prntscr.com/mgj542 ", і ми повинні надати іншу причину, ніж …
11 c++  iterator 

2
Що робить ітератор схемою дизайну?
Мені було цікаво, що саме те, що робить Ітератор особливим у порівнянні з іншими подібними конструкціями, і що змусило Банку чотирьох перерахувати його як модель дизайну. Ітератор заснований на поліморфізмі (ієрархії колекцій із загальним інтерфейсом) та розділенні проблем (повторення над колекціями має бути незалежним від способу структурування даних). Але що …

1
Чому Iterator і ListIterator Java переходять між елементами?
Javadoc для ListIterator каже: A ListIteratorне має поточного елемента; його курсорне положення завжди лежить між елементом, до якого буде повернуто виклик, previous()і елементом, до якого буде повернуто виклик next(). Чому Java була ListIteratorреалізована для вказівки між елементами, а не на поточному елементі? Здається , що це робить код клієнта менш …
9 java  iterator 
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.