neoluna, если я правильно понял что ты хочешь сделать, правда не поняд зачем(
class BredList(list):
def __eq__(self, other):
if isinstance(other, int) and self.__len__() > other == self[other]:
return self[other]
return super().__eq__(other)
a = BredList(range(5))
b = list(range(5))
print(a == 2, a == 4)
print(b == 2, b == 4)
Dictorinc, ну как минимум тут видно что else съехало и если код такой же то будет ошибка синтаксиса.
А так надо приводить ошибку. И вам еще далеко до "сложных" вопросов.
А еще никогда не стоит ловить таким образом исключения. надо всегда нужное ловить или нужные.
в питоне есть еще одинарные кавычки ' " ' а еще есть тройные """ ' " """ ''' " ' ''' - и не нужно экранировать
а так проверьте тип который вам приходит и не приходит ли вам более сложный объект.
На самом деле деле анатация влияет и помогает если используешь инструменты на нее затоенные например dataclass or pydantic, но по мимо них еще много инструментов которые смотрят на аннотацию. Но если их не использовать, то кроме хинтов в IDE ничего не получишь
Питон из коробки не фильтует сообщения по тексту ошибки. Но ты можешь в ручном режиме смотреть на текст и или сразу что то делать, или выбрасывать свою кастомную ошибку.
nokimaro, протобаф не столько о шифрованости. сколько об ускорении ответа. В определенных случаях он дает хорошее ускорение были примеры где мы до 20мс выигрывали, при переходе с джсона, при ответе в 140мс. (это все примерно 95 перцентиль)
Самое главное что нужно знать защитить интерпретируемый язык нельзя. Можно только усложнить жизнь
Самый простой вариант это что бы при старте и по таймауту прога ходила на сервер с проверкой на лицензию.
И отдавать ответ лучше в каком-нибудь бинарном формате и с кастомными заголовками. что бы школьнику сложнее было подделать - но сильно упарываться не стоит. так как если подделывать будет человек с головой. То все проверки возможные и не очень выпилят как не фиг делать.
ну и дальше смотри и разбирайся че к чему