Вопросы с тегом «iterator»

Итератор - это объектно-ориентированный паттерн программирования, который позволяет проходить через коллекцию, независимо от фактической реализации или адресов объектов в физической памяти. Это один из поведенческих шаблонов «Банды четырех».

4
Как RecursiveIteratorIterator работает в PHP?
Как RecursiveIteratorIteratorработает? В руководстве по PHP нет ничего особо документированного или объясненного. В чем разница между IteratorIteratorи RecursiveIteratorIterator?
88 php  iterator  spl 

3
JavaScript - нюансы myArray.forEach и цикла for
Я видел множество вопросов, предлагающих использовать: for (var i = 0; i < myArray.length; i++){ /* ... */ } вместо того: for (var i in myArray){ /* ... */ } для массивов из-за непоследовательной итерации ( см. здесь ). Однако я не могу найти ничего, что бы предпочло объектно-ориентированный цикл: …

6
Использование map () в итераторе
Скажем, у нас есть Map : let m = new Map();, использование m.values()возвращает итератор карты. Но я не могу использовать forEach()или map()на этом итераторе, и реализация цикла while на этом итераторе кажется анти-шаблоном, поскольку ES6 предлагает такие функции, как map(). Так есть ли способ использовать map()итератор?

4
enumerate () - создание генератора в Python
Я хотел бы знать, что происходит, когда я передаю результат функции генератора в enumerate () python. Пример: def veryBigHello(): i = 0 while i < 10000000: i += 1 yield "hello" numbered = enumerate(veryBigHello()) for i, word in numbered: print i, word Перечисление повторяется лениво или все перебирает в первую? …

7
Почему объекты в JavaScript не обрабатываются?
Почему по умолчанию объекты не повторяются? Я все время вижу вопросы, связанные с итерацией объектов, обычное решение - перебирать свойства объекта и таким образом получать доступ к значениям внутри объекта. Это кажется настолько обычным, что мне интересно, почему сами объекты не повторяются. Такие утверждения, как ES6, for...ofбыло бы неплохо использовать …

5
Можно ли начать итерацию с элемента, отличного от первого, с помощью foreach?
Я думаю о реализации IEnumerable для моей пользовательской коллекции (дерева), чтобы я мог использовать foreach для обхода моего дерева. Однако, насколько мне известно, foreach всегда начинается с первого элемента коллекции. Я хотел бы выбрать, с какого элемента запускается foreach. Можно ли как-то изменить элемент, с которого начинается foreach?


5
перебор каждого символа String в ruby ​​1.8.6 (each_char)
Я новичок в рубине и в настоящее время пытаюсь работать с каждым символом отдельно от базовой строки в рубине. Я использую Ruby 1.8.6 и хочу сделать что-то вроде: "ABCDEFG".each_char do |i| puts i end Это приводит к ошибке неопределенного метода «each_char». Я ожидал увидеть вертикальный вывод: A B C D …
86 ruby  string  iterator 

13
«Онлайн» (итератор) алгоритмы для оценки статистической медианы, режима, асимметрии, эксцесса?
Есть ли алгоритм для оценки медианы, режима, асимметрии и / или эксцесса набора значений, но он НЕ требует одновременного сохранения всех значений в памяти? Я хочу посчитать основную статистику: среднее: среднее арифметическое дисперсия: среднее квадратов отклонений от среднего стандартное отклонение: квадратный корень из дисперсии медиана: значение, отделяющее большую половину чисел …

1
Если range () является генератором в Python 3.3, почему я не могу вызвать next () для диапазона?
Возможно, я стал жертвой дезинформации в сети, но я думаю, что более вероятно, что я просто что-то неправильно понял. На основании того, что я узнал до сих пор, range () является генератором, а генераторы могут использоваться как итераторы. Однако этот код: myrange = range(10) print(next(myrange)) дает мне эту ошибку: TypeError: …

6
Необходим итератор при использовании циклов for на основе диапазона
В настоящее время я могу делать только циклы на основе дальности с этим: for (auto& value : values) Но иногда мне нужен итератор для значения вместо ссылки (по какой-то причине). Есть ли какой-либо метод без необходимости проходить через весь вектор, сравнивая значения?
85 c++  c++11  for-loop  iterator 

9
Когда не самое подходящее время для использования генераторов Python?
Это скорее обратное тому, для чего вы можете использовать функции генератора Python? : генераторы python, выражения генератора и itertoolsмодуль - одни из моих любимых функций python в наши дни. Они особенно полезны при настройке цепочек операций для работы с большим объемом данных - я часто использую их при обработке файлов …

4
python JSON получает ключи только на первом уровне
У меня очень длинный и сложный объект json, но я хочу получить элементы / ключи только на первом уровне! Пример: { "1": "a", "3": "b", "8": { "12": "c", "25": "d" } } Я хочу получить в результате 1,3,8 ! Я нашел этот код: for key, value in data.iteritems(): print …

3
Какие символы сгруппированы с Array.from?
Я играл с JS и не могу понять, как JS решает, какие элементы добавить в созданный массив при использовании Array.from(). Например, следующий emoji 👍 имеет значение length2, так как состоит из двух кодовых точек, но Array.from()обрабатывает эти две кодовые точки как одну, давая массив с одним элементом: const emoji = …

2
В JavaScript ES6, в чем разница между итерацией и итератором?
Является ли итерация такой же, как итератор, или они разные? Из спецификаций кажется, что итеративный объект - это, скажем, objтакой объект, который obj[Symbol.iterator]ссылается на функцию, поэтому при вызове возвращает объект, у которого есть nextметод, который может вернуть {value: ___, done: ___}объект: function foo() { let i = 0; const wah …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.