Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.78/18: Рейтинг темы: голосов - 18, средняя оценка - 4.78
23 / 22 / 4
Регистрация: 25.06.2018
Сообщений: 169

Цикл for с двойной итерацией, типа for и foreach вместе

03.11.2021, 12:06. Показов 4048. Ответов 28

Студворк — интернет-сервис помощи студентам
Как в Python можно красиво написать цикл, который берет из строки ряд чисел, и получает и сами числа и их значения.
Вариант с итерацией внутри цикла я знаю (i+=1), но это не красиво.

Python
1
2
3
4
#(на входе строка с рядом чисел 11 22 33 44 ...)
for i, n in input().split():
  i - индекс (0, 1, 2, 3 ...)
  n - отинтованное значение числа (11, 22, 33, 44 ...)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.11.2021, 12:06
Ответы с готовыми решениями:

Цикл foreach заменить на двойной цикл for
int mas = new int; Random Gen = new Random(); for (int i = 0; i < mas.GetLength(0); i++) for...

Как закрыть цикл While вместе с foreach?
while (true) { IWebElement body = edgeDriver.FindElement(By.TagName("body")); bool...

Нормально ли для системы один и тот же цикл запускать цикл 20 раз в секунду с итерацией до 1000
Нормально ли для системы один и тот же цикл запускать цикл 20 раз в секунду с итерацией до 1000? Или это большая перегрузка для...

28
enx
 Аватар для enx
1190 / 766 / 277
Регистрация: 05.09.2021
Сообщений: 1,772
03.11.2021, 12:11
Лучший ответ Сообщение было отмечено iSmokeJC как решение

Решение

enumerate

Добавлено через 1 минуту
Если я правильно понял, что ты имеешь ввиду под числами и их значением, может ты про индексы и значения?
3
1712 / 579 / 76
Регистрация: 10.04.2009
Сообщений: 9,327
03.11.2021, 12:13
Цитата Сообщение от Серый74 Посмотреть сообщение
который берет из строки
а можно по-человечески, строка?
Python
1
f = 'd:\Downloads\01.07.2021.htm'
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
03.11.2021, 12:20

Не по теме:

Ципихович Эндрю, очередной приступ?


Цитата Сообщение от Ципихович Эндрю Посмотреть сообщение
а можно по-человечески
Это, в первую очередь, к тебе вопрос
0
1712 / 579 / 76
Регистрация: 10.04.2009
Сообщений: 9,327
03.11.2021, 12:23
Цитата Сообщение от iSmokeJC Посмотреть сообщение
Ципихович Эндрю, очередной приступ?
мил человек, а можно без этого?
от ответа на этот вопрос, что зависит?
если да - то?
если нет - то?
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
03.11.2021, 12:25
Ципихович Эндрю, мил человек, объясни мне смысл вопроса
Цитата Сообщение от Ципихович Эндрю Посмотреть сообщение
а можно по-человечески, строка?
0
enx
03.11.2021, 12:25

Не по теме:

iSmokeJC, не реагируй, ему скучно и он просто стебется...

0
1712 / 579 / 76
Регистрация: 10.04.2009
Сообщений: 9,327
03.11.2021, 12:27
ТС запросил:
Цитата Сообщение от Серый74 Посмотреть сообщение
который берет из строки
я и спрашиваю
f = 'd:\Downloads\01.07.2021.htm'
подойдёт ТСу как строка?
я к тому, что он мог бы дать входные данные..............
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7391 / 4818 / 1246
Регистрация: 30.03.2015
Сообщений: 13,693
Записей в блоге: 29
03.11.2021, 12:28
Цитата Сообщение от Ципихович Эндрю Посмотреть сообщение
я к тому, что он мог бы дать входные данные..............
а это не они?

Цитата Сообщение от Серый74 Посмотреть сообщение
#(на входе строка с рядом чисел 11 22 33 44 ...)
0
1712 / 579 / 76
Регистрация: 10.04.2009
Сообщений: 9,327
03.11.2021, 12:32
так об этом и речь моя, что желательно было сказать
f = '11 22 33 44'
а может ему нужно
f = '11223344'
и оба варианта могут быть верны, оба не верны, верный один из них
и строки 3 и 4 это для всех откликнувшихся кошерно?
Цитата Сообщение от Серый74 Посмотреть сообщение
i - индекс (0, 1, 2, 3 ...)
  n - отинтованное значение числа (11, 22, 33, 44 ...)
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
03.11.2021, 12:38
Ципихович Эндрю, а к чему этот уточняющий вопрос, если при любом варианте ты не сможешь ответить ТСу? А тот кто может ответить - все прекрасно понял и уже ответил.
0
1712 / 579 / 76
Регистрация: 10.04.2009
Сообщений: 9,327
03.11.2021, 12:42
ну и хорошо, подождём что скажет ТС...........
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
03.11.2021, 12:47
Python
1
2
for i, e in enumerate(map(int, input().split())):
   print(f'index: {i}, elem: {e}')
1
1712 / 579 / 76
Регистрация: 10.04.2009
Сообщений: 9,327
03.11.2021, 12:51
а что поторопились-то??
тогда эксперимент не удался........
хотя....... одним словом ТС нужно ждать
0
23 / 22 / 4
Регистрация: 25.06.2018
Сообщений: 169
03.11.2021, 14:11  [ТС]
Цитата Сообщение от enx Посмотреть сообщение
ты имеешь ввиду под числами и их значением, может ты про индексы и значения?
Да, оговорился.
Нужны значения и индексы.
Цитата Сообщение от Ципихович Эндрю Посмотреть сообщение
а можно по-человечески, строка?
Любая строка с набором значений, которая делиться split()-ом. К примеру я такой вариант приводил:
Цитата Сообщение от Серый74 Посмотреть сообщение
#(на входе строка с рядом чисел 11 22 33 44 ...)
В итоге, для дальнейшей обработки нужны и сами значения из строки, и их индексы.

Вот такой цикл "for i in input().split():" - дает только значения, а мне еще и индекс нужен.

При этом, заведомо известно и количество значений в строке, допустим X. То есть "for i in range(X):" - тоже сработает, тогда будут только индексы, но тогда как пошагово значения выковырять из строки?
0
1712 / 579 / 76
Регистрация: 10.04.2009
Сообщений: 9,327
03.11.2021, 14:14
Цитата Сообщение от Серый74 Посмотреть сообщение
Любая строка с набором значений, которая делиться split()-ом
Python
1
f = 'd:\Downloads \01.07.2021.htm'
она?
0
enx
 Аватар для enx
1190 / 766 / 277
Регистрация: 05.09.2021
Сообщений: 1,772
03.11.2021, 14:17
Лучший ответ Сообщение было отмечено Серый74 как решение

Решение

Серый74, но тогда вопрос закрываем, конструкцию уже давали, вот еще одна.

Python
1
2
3
4
txt = 'это просто строка'
 
for index, element in enumerate(txt):
    print(index, element)
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
0 э
1 т
2 о
3  
4 п
5 р
6 о
7 с
8 т
9 о
10  
11 с
12 т
13 р
14 о
15 к
16 а
1
23 / 22 / 4
Регистрация: 25.06.2018
Сообщений: 169
03.11.2021, 14:22  [ТС]
Цитата Сообщение от iSmokeJC Посмотреть сообщение
for i, e in enumerate(map(int, input().split())):
   print(f'index: {i}, elem: {e}')
Тут будет один или два цикла?

Если массив из строки обходить два раза, сперва разделив на значения, а потом их обрабатывая, то по времени выполнения тест не проходит. Надо за один цикл и прочитать и обработать значения с учетом индексов.
0
1712 / 579 / 76
Регистрация: 10.04.2009
Сообщений: 9,327
03.11.2021, 14:23
Цитата Сообщение от Серый74 Посмотреть сообщение
Тут будет один или два цикла?
один конечно
0
Status 418
Эксперт Python
4584 / 2350 / 601
Регистрация: 26.11.2017
Сообщений: 5,262
Записей в блоге: 3
03.11.2021, 14:25
Цитата Сообщение от Серый74 Посмотреть сообщение
то по времени выполнения тест не проходит
так может с условия задачи нужно начать?
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.11.2021, 14:25
Помогаю со студенческими работами здесь

Обработка XML. Цикл foreach (XmlNode.) вложенный во внешний foreach
Здравствуйте. Возникла проблема при обработке XML-файла (с помощью XMLDocument). В теме я новичок. Имеется XML файл такого типа: ...

Бесконечный цикл с итерацией в 1 миллисекунду
Приветствую, подскажите пожалуйста, есть ли какая нибудь функция в objective-c которая бесконечно выполняется с итерацией в 1 миллисекунду?...

Двойной foreach
Добрый день . В алгоритме поиска товара по базе получаю нижеследующий код Array ( => ЛОНГОРИЯ-3 , ЛОНГОРИЯ , ЛОНГОРИЯ-4 ...

двойной foreach
привет. есть два массива $ar1 $ar2 нужно через foreach добавлять строки в $str по очереди, тоесть сначало из одного массива,...

Как заставить цикл присваивать новое значение с каждой итерацией?
Доброго времени суток. Помогите, пожалуйста, понять как при прохождении очередной итерации присваивать значение переменной следующему...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. На мобильном - сканируйте QR-код. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru