С Новым годом! Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 02.06.2020
Сообщений: 6

Как компактно записать скрипт с многими циклами

02.06.2020, 07:40. Показов 581. Ответов 4

Студворк — интернет-сервис помощи студентам
Здравствуйте. Есть громоздкий скрипт с циклом внутри цикла:

for Target in target_index:
b=0
for year in YEAR:
"ооочень длинный скрипт чьи результаты записываются в файл"


....

Есть необходимость воткнуть внутрь третий цикл по условию результата записанному в файл в вышеизложенном скрипте. Если воткнуть напрямую получится уж совсем громоздко, некрасиво, непонятно, нечто в чем я совершенно запутаюсь. Как новичок хотел спросить-есть ли у Python инструмент который позволит решить данную задачу в более изящном виде. Как то разбить скрипт на отдельные части, подкачивать куски скрипты из другого файла, описать целые куски скрипта одной строчкой. Одним словом чтобы цикл в цикле и еще раз в цикле не превращался в какую то невразумительную кашу, в которой сам написавший его не мог разобраться.
Спасибо.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
02.06.2020, 07:40
Ответы с готовыми решениями:

Как записать более компактно
Здравствуйте, не могу понять, как записать это всё более компактно, то есть можете помочь с написанием цикла. дана матрица и проводится над...

Как компактно и удобно записать числовой массив?
никак не соображу как то есть обычный массив чисел например 23,23,512,12 и так далее но он относительно не маленький, как его...

Компактно записать вызов процедуры множеством событий
Как правильно оформить вызов процедуры для множества событий (хоткеи alt+0..alt+9 и btn0OnMouseUp..btn9OnMouseUp) без многократного...

4
Модератор
Эксперт Python
 Аватар для Fudthhh
2695 / 1601 / 513
Регистрация: 21.02.2017
Сообщений: 4,210
Записей в блоге: 1
02.06.2020, 08:08
marat__, да хоть миллион циклов. Красиво - некрасиво, главное чтобы было по правилам и понятно. Тем более без примера, не понятно о чем речь.

Добавлено через 3 минуты
Python
1
2
3
4
5
6
7
elements = [[[1, 2], [3, 4]], [[5, 6], [7, 8]], [[9, 10], [11, 12]]]
 
 
for sub_elements in elements:
    for sub_sub_elements in sub_elements:
        for sub_sub_element in sub_sub_elements:
            print(sub_sub_element)
0
0 / 0 / 0
Регистрация: 02.06.2020
Сообщений: 6
02.06.2020, 08:15  [ТС]
вот код. может увидите что в этой каше, с 3 (а там и 4 цикл в перспективе) циклами разбираться сложно
Вложения
Тип файла: docx Untitled 1.docx (7.0 Кб, 4 просмотров)
0
Модератор
Эксперт Python
 Аватар для Fudthhh
2695 / 1601 / 513
Регистрация: 21.02.2017
Сообщений: 4,210
Записей в блоге: 1
02.06.2020, 08:53
Во первых код в docx? Во вторых код не читабелен: куча не понятных комментариев, как попало названы переменные, куча лишних действий.
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
02.06.2020, 17:32
Цитата Сообщение от marat__ Посмотреть сообщение
Одним словом чтобы цикл в цикле и еще раз в цикле не превращался в какую то невразумительную кашу,
Не нравится каша - разбивайте логику кода на маленькие подзадачи в виде отдельных функций.
Это называется декомпозиция.
Цитата Сообщение от marat__ Посмотреть сообщение
есть ли у Python инструмент который позволит решить данную задачу в более изящном виде.
Это не имеет отношения в языку: этот инструмент - голова программиста.
Цитата Сообщение от marat__ Посмотреть сообщение
Как то разбить скрипт на отдельные части, подкачивать куски скрипты из другого файла, описать целые куски скрипта одной строчкой
Вот это все и называется программированием: создание правильной архитектуры приложения и продумывание его логики. А вовсе не тот набор строчек с вызовами функций, что вы там накодили.

P.S. Насчет циклов в pandas. Как правило, они там не нужны. Но для этого нужно хорошо понимать синтаксис pandas.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
02.06.2020, 17:32
Помогаю со студенческими работами здесь

Записать 3 варианта с циклами
Записать 3 варианта (с циклами while, do, for) программы вычисления условной функции в точках  х i ∈ ,  х i = х 0 + iх, i = 0,1,… Вывод...

Записать 3 варианта (с циклами while, do, for) программы
Записать 3 варианта (с циклами while, do, for) программы вычисления условной функции в точках  х i ∈ ,  х i = х 0 + iх, i = 0,1,… Вывод...

Как написать более компактно ?
Есть очень много полей для ввода.... и нужно разом все очистить... изначально были одни одинаковые компоненты и для них была такая...

Как компактно оформить многомерный массив?
Как оформить многомерный массив(коллекцию) в виде похожем на таблицу (см. пример). Пример. (({"Иванов", "Иван",...

Как компактно отображать и хранить большие числа?
Есть ли какой-нибудь общеупотребимый формат? Типа 3*(2^123456-1) Сейчас развлекаюсь с числами Мерсенна. Для них просто придумал...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru