LINUX.ORG.RU

Python и локальные переменные внутри цикла

 


0

2

Нет ли способа поиметь в Python'е локальные переменные внутри циклов? Такие, которые не будут загромождать область видимости вовне? Иначе, когда код разрастается на экран-другой, понимать, что к чему, становится всё труднее.

Я знаю, что для хорошего кода тела циклов выносят в функции и методы. Однако клепаемый код - это, зачастую, одноразовые скрипты для статистических расчётов. Которые пишутся в духе «посмотрим на графики от предыдущей итерации и добавим/удалим пяток строк». О проектировании часто речь не идёт вообще, потому как я часто не знаю, что буду писать дальше.

Python здесь - это замена MATLABу.

И таки да, нет ли способа сделать так, чтобы переменные внутри циклов были локальными?


Ответ на: комментарий от tailgunner

У тебя же рефлексия.

А теперь начались проекции. Ты бы отдохнул или к специалисту обратился, пропадаешь ведь.

Ты тоже отметился, кстати.

Не надо грязи, в разработке питона я не участвовал совсем никак.

И даже в этом треде не сгенерировал ни строчки кода.

aedeph_ ★★
()
Ответ на: комментарий от aedeph_

в разработке питона я не участвовал совсем никак.

Скрипач, ты дальтоник штоле? Сначала Гвидо, потом разработка Питона... у тебя реально фиксация.

И даже в этом треде не сгенерировал ни строчки кода.

Ты помог добрым словом: Python и локальные переменные внутри цикла (комментарий)

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

Тред удалить, участников забанить.

Ты тоже теперь его участник, номинально. И с ЛОРа же не выгоняют, отсюда сами уходят.

Virtuos86 ★★★★★
()
Ответ на: комментарий от korvin_

А, так ты за то, чтобы микроскопами забивать гвозди.

Все ЯП говнище, особенно популярные. Так что согласен.

Virtuos86 ★★★★★
()

Делаю так же как посоветовал Alv. УМВР, брат жив.

NeverLoved ★★★★★
()
Ответ на: комментарий от Virtuos86

А, так ты за то, чтобы микроскопами забивать гвозди.

При чем тут микроскоп и гвозди? В почти всех нормальных и не очень ЯП подобного вопроса (как у ТС) не возникло бы в принципе, не говоря уж о потоке предложенных костылей для обхода.

Или ты хочешь сказать, что Пайтон не подходит для циклов for?

korvin_ ★★★★★
()
Последнее исправление: korvin_ (всего исправлений: 1)
Ответ на: комментарий от korvin_

Или ты хочешь сказать, что Пайтон не подходит для циклов for?

Нет, я хочу сказать, что ТС захотел поиметь возможность объявить в произвольном месте кода локальные переменные. А в Python этого нельзя сделать. Нет ни «my», ни «let». Хочешь локальный неймспейс — определяй блок кода, функцию. Не хочешь функцию, городи костыли.

Все в соответствии с идеологией языка. «Есть только один способ…» и т.д. Не нравится, не используй.

Virtuos86 ★★★★★
()
Ответ на: комментарий от Virtuos86

Хочешь локальный неймспейс — определяй блок кода, функцию. Не хочешь функцию, городи костыли.

Хочу безымянные блоки кода. Как?

korvin_ ★★★★★
()
Ответ на: комментарий от korvin_

Никак, их нет. Питон вообще скудноват в возможностях синтаксисодрочества на фоне Руби или там Перла. Поэтому в нем многие вещи и делаются зачастую только одним вменяемым образом.

Вообще, пустой разговор. Тебе не нравится Питон, а меня он устраивает. Все при своих и останутся.

Virtuos86 ★★★★★
()
Ответ на: комментарий от korvin_

lambda. Не хватает выразить мысль в однострочный код - быдлокодер.

anonymous
()
Ответ на: комментарий от Virtuos86

Никак, их нет. Питон вообще скудноват в возможностях синтаксисодрочества на фоне Руби или там Перла...

..., C, C++, Java, C#, Go, ...

for (...) {
  int a = 0;
  ...
}
korvin_ ★★★★★
()
Ответ на: комментарий от Virtuos86

Так пишут в реальном рабочем коде?

Пишут. Другое дело, что некритично это.

tailgunner ★★★★★
()
Ответ на: комментарий от korvin_

У меня нет проблем. Проблемы у тех языков, где практикуется использование циклов как безымянных блоков кода.

Virtuos86 ★★★★★
()
Ответ на: комментарий от Virtuos86

Проблемы у тех языков, где практикуется использование циклов как безымянных блоков кода.

Это что за языки такие? Ни разу не видел.

korvin_ ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.