Size: a a a

2021 February 12

RB

Roman Bolkhovitin in rannts
Байт Словович
А кто нить понял почему так? Желательно со ссылкой на пеп.
источник

RB

Roman Bolkhovitin in rannts
источник

💭П

💭 Руслан Прохоров... in rannts
а для нового PIP такого ещё нет?
источник

KK

Kirill (Cykooz) Kuzm... in rannts
В Rust в общем-то тоже можно что-то подобное словить, если не понимать что это именно паттерн матчинг. И если ему передать в качестве значения case что-то похожее на имя переменной, то это и будет переменная в которую будет положено значение того что матчат. Ведь любое значение можно сматчить с переменной хранящей значение.
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Правда в Rust гораздо сложнее словить на этом багу, чем в питоне
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Байт Словович
А кто нить понял почему так? Желательно со ссылкой на пеп.
case NOT_FOUND означает примерно следующее "Если проверяемое значение можно засунуть в переменную, то всё совпадает. Кладём значение в переменную NOT_FOUND и выполняем код в этой ветке case
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Проблема в питоне вылезает из-за того, что в нём нет настоящих констант. Есть только конвенция.
источник

in

ildar nizamov in rannts
Kirill (Cykooz) Kuzminykh
Проблема в питоне вылезает из-за того, что в нём нет настоящих констант. Есть только конвенция.
тоже об этом подумал. может надо было сначала константы завезти?
источник

RB

Roman Bolkhovitin in rannts
Эвона как
источник

БС

Байт Словович... in rannts
Kirill (Cykooz) Kuzminykh
case NOT_FOUND означает примерно следующее "Если проверяемое значение можно засунуть в переменную, то всё совпадает. Кладём значение в переменную NOT_FOUND и выполняем код в этой ветке case
хм, никогда не задумывался, но наверное действительно так. Просто в функциональных языках почти всегда неизменяемые типы и там таких проблем нет.
посмотрим что аффторы ответят.
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Да, ждём PEP на константы. Правда не знаю как они с мутабельными значениями разрулят. Как вариант могут запретить объявлять константой мутабельные штуки.
источник

БС

Байт Словович... in rannts
ну вон енамы, почти константы..
источник

💭П

💭 Руслан Прохоров... in rannts
Kirill (Cykooz) Kuzminykh
Да, ждём PEP на константы. Правда не знаю как они с мутабельными значениями разрулят. Как вариант могут запретить объявлять константой мутабельные штуки.
Да просто ввести типизацию и всё )
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Ну и вариант из твитера конечно же вырожденный. Нет ни какого смысла писать match только с одним case. А если бы было вот так:
match x:
  case NOT_FOUND: ...
  case ....
  ...

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

in

ildar nizamov in rannts
💭 Руслан Прохоров
Да просто ввести типизацию и всё )
и компиляцию. и генерики. пакетный менеджер. и нормальный язык будет.
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Но если сделать вот так
match x:
  case ....
  ...
  case NOT_FOUND: ...

То линтер не поможет
источник

💭П

💭 Руслан Прохоров... in rannts
ildar nizamov
и компиляцию. и генерики. пакетный менеджер. и нормальный язык будет.
Давай выпьем за это!
источник

RB

Roman Bolkhovitin in rannts
ildar nizamov
и компиляцию. и генерики. пакетный менеджер. и нормальный язык будет.
Вроде такой есть уже
источник

RB

Roman Bolkhovitin in rannts
Только дженерики пока в пути
источник

in

ildar nizamov in rannts
тут вроде любят механику
источник