|
1956 / 874 / 352
Регистрация: 05.09.2021
Сообщений: 1,387
|
||||||
PyCharm (VS Code), Type hints, оператор сравнения (if)13.02.2024, 15:07. Показов 877. Ответов 8
Метки нет (Все метки)
Заметил интересный (на мой взгляд) момент.
Если использовать type hints, то при попытке присвоить значение несоответствующего типа IDE выдает предупреждение. Если создать список, и указать тип значений которые в нем должны содержаться, то при добавлении значения другого типа, также получаем предупреждение. А вот при использовании оператора сравнения, никаких предупреждений не появляется.
В настройках PyCharm я не нашел. Проверил в VS Code. Установил несколько разных линтеров (Pylint, MyPy, Sonarlint) и ни один также не выдал ни одного предупреждения, что мы сравниваем "литры с километрами". Есть возможность каким-либо образом добавить данный функционал?
0
|
||||||
| 13.02.2024, 15:07 | |
|
Ответы с готовыми решениями:
8
Оператор сравнения выдает ошибку Type mismatch Декоратор, изменяющий возвращаемое значение + type hints
|
|
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
|
|
| 13.02.2024, 15:18 | |
|
0
|
|
|
12 / 11 / 3
Регистрация: 30.04.2019
Сообщений: 66
|
||
| 26.04.2024, 09:48 | ||
|
Поэтому вряд ли показ таких предупреждений уместен.
0
|
||
|
Просто Лис
|
|||||||||||
| 26.04.2024, 16:31 | |||||||||||
|
Я тоже не вижу проблемы. Есть перегрузка оператора
== для типов int и str - ну и ок. Лучше контролируйте типы входных параметров, хотя бы теми же аннотациями.
Более хардкорный способ:
0
|
|||||||||||
|
1956 / 874 / 352
Регистрация: 05.09.2021
Сообщений: 1,387
|
|||||||||||
| 27.04.2024, 09:16 [ТС] | |||||||||||
|
iSmokeJC, jnllll, Рыжий Лис,
Проблема в том, что у меня был примерно такой код.
.value к объекту класса.Т.е. сделал так:
Ошибку я нашел быстро, но "осадок остался". Т.е. с одной стороны я понимал, что "оно" сравнивает два объекта, один типа int, а другой типа Foo, и это разные объекты. Вроде все "по честному". Но с другой, вроде я специально указываю типы, чтобы статический анализ работал. Причем int, хоть и является объектом, но по сути это "примитивный" тип, и хотелось бы увидеть хоть какое-то предупреждение. Что-то типа "вы уверены что хотите сравнить число с объектом".
1
|
|||||||||||
|
Просто Лис
|
|||||||||||
| 27.04.2024, 14:22 | |||||||||||
|
С такими запросами вам в rust (без обид).
1
|
|||||||||||
|
3750 / 1944 / 612
Регистрация: 21.11.2021
Сообщений: 3,706
|
||
| 28.04.2024, 00:37 | ||
|
Цитата из документации: <Среда выполнения Python не использует аннотации к функциям и типам переменных. Они могут использоваться сторонними инструментами, такими как средства проверки типов, IDE, компоновщики и т.д.>
1
|
||
|
12 / 11 / 3
Регистрация: 30.04.2019
Сообщений: 66
|
|||||||
| 30.04.2024, 08:27 | |||||||
|
Вот сигнатуры методов сравнения для типов int и object:
Если требуется, чтобы проверка работала, то нужно наследоваться и переписывать методы. По другому никак.
0
|
|||||||
| 30.04.2024, 08:27 | |
|
Помогаю со студенческими работами здесь
9
Process finished with exit code 1073741845 - PyCharm Pandas Pycharm выдаёт ошибку, если пишу оператор выбора if Оператор сравнения Оператор сравнения Оператор сравнения Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html
Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
|
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
|
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях.
Задача: при копировании документа очищать определенные реквизиты и табличную. . .
|
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git
main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели
8ATzM_2aurI
|
|
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2.
Задача: запретить редактирование документа, если он открыт у другого пользователя.
/ / . . .
|
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои.
А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
|
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
kYBz3eJf3jQ
|
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
|