@python_beginnersЭта группа больше не существует

Страница 326 из 1885
[Anonymous]
19.08.2016
06:59:31
Zahar
19.08.2016
06:59:58
Модеры, может запиновать такую шапку https://github.com/TheKnightsWhoSayNi/info/wiki/Hat ? А то вопросы, вроде "Что почитать", уже не впервые

Да, бабоян с двача, но что поделать, если люди не могут нагуглить

alex
19.08.2016
07:13:39
Добрый день! Кто пишет на эрланге?

Google
Zart
19.08.2016
07:19:26
а по дороге на канал ерланга он подумал "а не завернуть ли к питонщикам?"

Pavel
19.08.2016
07:20:42
Добрый день! Кто пишет на эрланге?
Это вопрос из кроссворда?

Bulat
19.08.2016
07:22:15
Проанализируйте кто пишет на эрланге

alex
19.08.2016
07:23:46
а по дороге на канал ерланга он подумал "а не завернуть ли к питонщикам?"
Если вы мне подскажете канал эрланга, то буду благодарен.

Gra4
19.08.2016
07:28:14
Что-то концентрация треша с каждым днем увеличивается

Доброго времени суток всем

Roman
19.08.2016
10:03:13
Народ, снова тот же вопрос. Конверт html в plaintext. BS4 оставляет инлайн css комментарии, либа от аарона шварца, и ее форки - названия классов (редко). Есть еще варианты?

Stanislav
19.08.2016
12:05:17
Если я унаследую класс, и переопределю __init__ то все переменные с родительского __init__ пропадут. Как же тогда при инициализации сделать переменные класса, не переопределяя __init__? Отдельная функция смотрится некрасиво, намного проще писать так: a = A("first_var")

Stanislav
19.08.2016
12:07:07
class LoginSession(requests.Session):

Google
Stanislav
19.08.2016
12:07:22
def __init__(self): super().__init__()
Спасибо! Не догадался

Еще вопросик Хочу rasie'ит ошибку, чисто текстик. Я скостылил и создал пустышку, которая пишет на экране то что я передал ей class E(Exception): def __init__(self, message): self.message = message def __str__(self): return self.message Уверен что есть намного проще выход. Ибо ради одного эксцепшена создал отдельный файл ?

tosh
19.08.2016
12:25:02
raise Exception(message)

Zart
19.08.2016
12:25:57
class MyException(Exception): pass ... raise MyException('message')

Stanislav
19.08.2016
12:27:39
raise Exception(message)
Мне это больше нравится)

Спасибо снова

Zart
19.08.2016
12:27:55
Stanislav
19.08.2016
12:28:10
ловить хуево
А как тогда делать? Я не try...catch

Zart
19.08.2016
12:28:18
я ж показал

Andrey
19.08.2016
12:28:24
Мне это больше нравится)
Нt делай так. Делать свои исключения в базовом классе - очень плохая ошибка.

Zart
19.08.2016
12:28:35
создаешь свой подкласс, причем переопределять ничего не обязательно

Andrey
19.08.2016
12:28:48
А как тогда делать? Я не try...catch
Тогда твоё исключение не отличить вообще ни от какого исключения.

Zart
19.08.2016
12:29:23
щито?

Andrey
19.08.2016
12:29:30
Класс в классе?
Facepalm... Сделай свой класс исключений.

tosh
19.08.2016
12:29:36
Да чо вы пугаете человека лол

Andrey
19.08.2016
12:29:38
И выбрасывай его когда надо.

Zart
19.08.2016
12:29:38
class MyException(Exception): pass ... raise MyException('message')

tosh
19.08.2016
12:29:40
Может у него там чисто информационное дерьмо

Stanislav
19.08.2016
12:29:46
Facepalm... Сделай свой класс исключений.
Ну бля, еще один файл создавать

Google
tosh
19.08.2016
12:29:48
Которое и не нужно особо отлавливать

Zart
19.08.2016
12:29:52
какой файл?!

Stanislav
19.08.2016
12:30:07
какой файл?!
Для эксцепшенов специально

Andrey
19.08.2016
12:30:09
Ну бля, еще один файл создавать
Во первых - это не обязательно. Во вторых - что в этом плохого?

Zart
19.08.2016
12:30:12
нахуя?

Andrey
19.08.2016
12:30:17
Stanislav
19.08.2016
12:30:22
нахуя?
PyhonWay

Zahar
19.08.2016
12:30:23
Джавист, видимо)

Zart
19.08.2016
12:30:32
я его в упор не понимаю уже

Zahar
19.08.2016
12:30:37
Каждому файлу по классу)

tosh
19.08.2016
12:30:37
Поэтому пишем дерьмо?
Поэтому для хелловорлда может не городить

Zart
19.08.2016
12:30:38
он специально хуйню несет?

Andrey
19.08.2016
12:30:38
Мде...

Stanislav
19.08.2016
12:30:56
я его в упор не понимаю уже
Отдельный файл - легче потом искать и переделывать все

Zart
19.08.2016
12:31:05
PyhonWay
это ты где такое откопал?

Stanislav
19.08.2016
12:31:14
Andrey
19.08.2016
12:31:21
Отдельный файл - легче потом искать и переделывать все
Чувак, перестань писать в блокноте и пользуйся нормальными инструментами.

Zahar
19.08.2016
12:31:29
Отдельный файл - легче потом искать и переделывать все
Отдельный. Файл. Для класса в 10 строк.

ну, блокнот поддерживает Ctrl + F

Google
Stanislav
19.08.2016
12:32:20
Отдельный. Файл. Для класса в 10 строк.
А теперь в голове топика: Я написал что не очень удобно создавать отдельный класс, ибо я его буду совать в новый файл Для этого искал что-то типо raise Exception(text)

Andrey
19.08.2016
12:32:32
а я не перестану
Под блокнотом я подразумеваю чисто текстовый редактор без всяких наворотов.

tosh
19.08.2016
12:32:50
А теперь в голове топика: Я написал что не очень удобно создавать отдельный класс, ибо я его буду совать в новый файл Для этого искал что-то типо raise Exception(text)
На самом деле чуваки выше правы в плане отлова. Если у тебя там что-то сложнее хелловорлда, то различать свой иксепшон от встроенного - хорошо

Admin
ERROR: S client not available

tosh
19.08.2016
12:33:47
Но пихать в отдельный файл по-прежнему не обязательно

Andrey
19.08.2016
12:33:56
На самом деле чуваки выше правы в плане отлова. Если у тебя там что-то сложнее хелловорлда, то различать свой иксепшон от встроенного - хорошо
Отличить свой эксепшон от Exception - хорошо. Остальные можно кидать. Потому что если, к примеру, нет файла, а он тебе нужен, то воспользоваться системными исключениями нет никаких проблем.

tosh
19.08.2016
12:33:56
Особенно, если эксепшен специфичен для кода в текущем

Stanislav
19.08.2016
12:34:05
У меня каждый файл == новый модуль

Я не могу все в один((

tosh
19.08.2016
12:35:07
И чем угадывать, что - легче сделать свой

Но у меня есть прям несколько кейсов, когда мне натурально посрать что за иксепшон пришёл

Andrey
19.08.2016
12:35:55
И чем угадывать, что - легче сделать свой
Так тоже можно, но надо не забывать наследоваться как можно от более узкой специализации исключения.

Если не найден файл, то наследуйся от соответствующего исключения.

Zart
19.08.2016
12:36:11
короче. либо ты кидаешь подходящий ексепшен по смыслу - часто хватает IndexError/KeyError/ValueError/TypeError/IOError либо создаешь свои классы

tosh
19.08.2016
12:36:37
Кокие все категоричные

Zart
19.08.2016
12:37:06
потому что нехер писать откровенное говно

Google
tosh
19.08.2016
12:37:24
нехер угадывать что там у него в коде происходит

Zart
19.08.2016
12:37:35
У меня каждый файл == новый модуль
модуль и есть отдельный файл

tosh
19.08.2016
12:37:58
Если не найден файл, то наследуйся от соответствующего исключения.
Это детали. В зависимости от поведения, которое ты ждешь от иксепшена

Stanislav
19.08.2016
12:38:05
Я так подумал - у меня их будет не 1

Andrey
19.08.2016
12:38:42
Это детали. В зависимости от поведения, которое ты ждешь от иксепшена
Фигасе детали. За неправильное наследование от стандартных эксепшинов нужно отстреливать пальцы.

Zart
19.08.2016
12:38:42
думать надо о том, как ты их потом будешь ловить

Andrey
19.08.2016
12:39:09
Но я обычно использую системные исключения.

Andrey
19.08.2016
12:41:22
И какой практический смысл в наследовании от конкретного эксепшена?
В том, что ты отлавливаешь конкретный класс ошибок. Возникло IOException во многих модулях - отловил, обработал. А если для каждого модуля своё исключениие ловить, то код превращается в говно.

Плохо
Нет, если системное исключение подразумевает именно эту ошибку, то зачем создавать своё исключение?

Zart
19.08.2016
12:43:31
в 90% случаев ловят семейства ошибок

Andrey
19.08.2016
12:43:56
в 90% случаев ловят семейства ошибок
Что-то ты преуменьшил процент)

tosh
19.08.2016
12:44:22
Не понимаю, что у вас за кейсы, когда нельзя перехватить IOError, а надо велосипедить свой

Zart
19.08.2016
12:44:23
ну там завезли няшные исключения ж

tosh
19.08.2016
12:45:49
Вот и я думаю - зачем

Страница 326 из 1885

Эта группа больше не существует Эта группа больше не существует