169 похожих чатов

Единственное до чего я дошел эволюционно - разбивать весь код

питона на блоки, типа 1 блок - 1 важное действие. Весь блок оборачивается в try-except и таким образом если в этом блоке происходит ошибка - я просто выхожу из блока через except и дальше уже не иду, вызывая функцию отчета об ошибке мне в телегу.

А как вы изолируете потенциально опасные функции?

25 ответов

23 просмотра

Так же и делаю через try-except. Только в try надо заворачивать как можно меньше кода, желательно один вызов.

А декораторы не устраивают чем-то? По-моему, это самый прямой путь в питоне сделать "обёртку" над функцией

Саша | IT- Автор вопроса
Stas B
А декораторы не устраивают чем-то? По-моему, это с...

не устраивают тем, что декоратор можно написать и использовать ТОЛЬКО при создании функции

Если речь об R, то tryCatch и пакет checkmate закрывают все потребности. Тем более на assert в .var.name можно подвесить что угодно начиная от писания в лог, и заканчивая телеграмм ботом, который отстукивает если пошла хрень в данных.

Саша | IT
не устраивают тем, что декоратор можно написать и ...

Вы ищите слова "контекстный менеджер" скорее всего - with

Саша | IT- Автор вопроса

Он это обертка для try catch с явно заданным объектом от которого пляшем и позволяет собой декорировать любой код

))) Сугубо потребительское отношение. Вокруг люди ходят, может они ещё не решили, checkmate ещё не используют. Хотя вроде и писали, но не лишним будет напомнить.

Я вот использую try только при вызове некоторых библиотечных функций. Потому что ошибка в коде означает мое непонимание данных или бизнес-процеса, я должен вернуться на пару шагов в crisp-dm, а не try наваливать в код. Сходить в гембу, выяснить, откуда берутся такие условия, что код рушится. Как правило, это приносит новые знания и понимание.

мне кажется в питоне - это распространенная привычка, в R наблюдаю этого гораздо меньше

я напоминаю, это до сих пор чат по R

Юрий
я напоминаю, это до сих пор чат по R

Юра, в целом да. Но с учетом стратегии Posit и общих тенденций на рынке иногда полезно/интересно обсудить нетривиальные вопросы по питону. Только без потока сознания, а в формате вопрос-ответ. Здесь часто ответы поступают куда информативнее и менее ангажированные чем в питон группах. Не то, чтобы нельзя было найти ответы на все вопросы путем длительного чтения книг и блогов. Но часто можно наткнуться на корявые способы и кривые ответы и решить, что так оно и должно быть, хотя, зачастую, это вовсе не так.

Ilya Shutov
Юра, в целом да. Но с учетом стратегии Posit и общ...

Я не против такого, но когда просят "мне такое же, только на питоне". Это лучше не здесь

Саша | IT- Автор вопроса
Юрий
я напоминаю, это до сих пор чат по R

Спасибо за напоминание, но здесь нет строгих правил и если вопрос не по R - бан) Я в душе исследователь и мне интересно развиваться как программист. Какая разница какой язык выбрать, если мне привычнее и удобнее общаться с более образованными и корректными людьми) В питон сообществах спошь и рядом всё плохо. Да, народу там много, но хоть язык и высокоуровневый, но народ нет)

Саша | IT- Автор вопроса
Юрий
Я не против такого, но когда просят "мне такое же,...

А где?) В питон сообществах? Там не знают возможностей R)

Саша | IT
Спасибо за напоминание, но здесь нет строгих прави...

Просто реально бесит, например, пишешь пост в канале с примером на R,а мне коммент -- круто, а на питоне можно так... Занавес. Зачем натягивать сову на глобус, непонятно

Саша | IT- Автор вопроса
Юрий
Просто реально бесит, например, пишешь пост в кана...

Вы как будто ревнуете к питону) чем он вам не угодил?)

Саша | IT- Автор вопроса
Юрий
Это их проблемы

Я сомневаюсь что это вообще проблема

Юрий
Я не против такого, но когда просят "мне такое же,...

Согласен на 100%. Но иногда бывают отличные вопросы, которые заставляют подумать как такое же сделать в R. Вот был отличный вопрос от Ильи Малеки: https://t.me/r_in_action/305. Пришлось попыхтеть достаточно для адекватного ответа 🙂

Саша | IT- Автор вопроса

Кстати да. Есть же и обратная сторона, когда те, кто знают питон хотят изучить R и у них такие же вопросы.

Похожие вопросы

Обсуждают сегодня

а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Добрый день. Хочу сделать отрисовку по команде на панели. Почему-то рисуется только при втором вызове. С чем может быть связано, не подскажете? procedure TForm1.FormDblClick(...
Kirill Filippenok
20
Всем доброго дня! Подскажите может кто использовал связку Pagebuilder + Clientsetting. Сами параметры с типом pagebuilder в модуле Clientsetting работают нормально, можно такж...
Александр Добриков
12
А почему в си некоторые вещи работают с двойными кавычками некоторые с одинарными? Нельзя было все сделать с одними или чтоб работало с разными? например чтоб выводить строки ...
.
15
Всем привет! Нужен совет от опытных. Переношу свой проект с Делфи 10.2 Токио на Лазарус 3.2 установленный через инсталлятор fpcupdeluxe-x86_64-win64. При импортировании проект...
Дмитрий Завгородний
7
Всем привет! Подскажите. Я написал приложение на Delphi 10.2 Tokyo под Windows 10. И передо мной стал вопрос о том чтобы сделать это приложение кроссплатформенным (под Linux и...
Дмитрий Завгородний
24
Good afternoon, I just started learning php in conjunction with mysql. I am registering a system on a local Mamp server using phpMyAdmin. It seems to be stored normally in the...
ManGo
1
Эх кто-то пришел и весь праздник испортил :( You need complex FBX scene importing setup to change things on import? good luck with that. You need navigation and pathfinding? g...
Serg Gini
5
Добрый день! Такая проблема возникла, написал код на Python, который компилирует, собирает и запускает файлы .s А в случае работы нужно то же самое делать для .asm Чем эти фа...
A Mori
5
Всем привет! procedure TForm1.FormCreate(Sender: TObject); type TStartEnd = record S: Byte; E: Byte; end; var a, b: TStartEnd; begin {1} a.S := 1; {2} a.E := 2; ...
Руслан Михайлович
10
Карта сайта