Python: задачки и вопросы
Ir al canal en Telegram
Вопросы и задачки для подготовки к собеседованиям и прокачки навыков Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels Другие наши проекты: https://tprg.ru/media
Mostrar más6 858
Suscriptores
-124 horas
-147 días
-4830 días
Archivo de publicaciones
Объяснение:
GIL (Global Interpreter Lock) — это механизм, который не позволяет более чем одному потоку одновременно выполнять нативный код Python
Это создаёт проблемы с производительностью в многопоточных программах, так как потоки не могут выполняться параллельно на разных ядрах процессора
GIL (Global Interpreter Lock) в Python — это механизм,
Объяснение:
sum(iterable, start) — функция sum() принимает на вход лишь итерируемые объекты, то есть объекты, которые способны возвращать элементы по одному
Так как ни int, ни float таковыми не являются, то у нас здесь ошибкаОбъяснение:
Что же возвращает метод строки
find()? Самый быстрый способ это узнать — прочитать документацию. Согласно документации по Python, если подстрока не найдена, find() возвращает -1.
С этим знанием в голове, попробуйте выполнить следующий код:
print(bool(-1)) # выведет:True
Как видите, при преобразовании -1 в логическое значение (Boolean), оно возвращается как True.
Поэтому в приведенном выше коде, когда подстрока "C++" отсутствует, метод find() возвращает -1,
что оценивается как True, и поэтому выводится: "Found C++!".Объяснение:
В квизе есть ошибка! Конечно, нужно немного знать язык, чтобы её увидеть. Но анализ кода и диагностика проблем — ВАЖНАЯ часть становления крутым разработчиком.
Если вы запустите этот код в Python 3.10 или выше, Python постарается указать вам, что не так с кодом:
>>> x = True
>>> y = False
>>> print(x == not y)
File "<stdin>", line 1
print(x == not y)
^^^
SyntaxError: invalid syntax
Как видите, что-то не так с оператором not в приведённом выше коде.
Можно исправить код так:
>>> x = True
>>> y = False
>>> print(x != y)
True
Здесь используется != для проверки, что x не равно y.
Другой способ "исправить" этот код — добавить дополнительные скобки:
>>> x = True
>>> y = False
>>> print(x == (not y))
True
В этом примере "not y" находится в скобках и сравнивается с x. Оба решения — хороший способ заставить код работать.Принимать? А может лучше предпринимать?
Ну то есть стать ТехПредом — предпринимателем, который умеет проектировать, разрабатывать и выводить на рынок технологичные продукты.
Научиться этому вы можете в онлайн-магистратуре МФТИ «Технологическое предпринимательство». Выпускники ведут значимые и интересные проекты в самых разных сферах, от ИТ до биомедицины. Вот пара примеров:
— прибор ранней диагностики онкозаболеваний,
— инструмент для контроля ИТ-безопасности,
— разработка и запуск на европейский рынок робота-садовника,
— выведение наклонного рабочего места на международный рынок.
А ещё выпускники становятся продакт-менеджерами и руководителями R&D отделов, CEO и CTO.
Хотите работать эффективнее или примерить роль основателя бизнеса?
А будет ли конкретно в вашей ситуации польза от сообщества ТехПреда МФТИ? Можно обсудить с преподавателями, а заодно получить полезные контакты студентов и выпускников. Для этого напишите нам в Telegram.
это #партнёрский пост
Объяснение:
Метод
find() возвращает индекс первого вхождения указанного символа или подстроки в строке. Если символ или подстрока не найдены, метод find() возвращает -1
Так как в Python нет символа p, то и ответ у нас -1Объяснение:
В Python строки являются неизменяемыми объектами и иногда для оптимизации Python использует один и тот же объект для хранения идентичных строковых литералов
Но это не гарантировано для строк, созданных динамически или через операции, как в данном примере с конкатенацией
Оператор
is проверяет идентичность объектов, а не их эквивалентность. А так как z и "123456" — это разные объекты в памяти, даже если их значения одинаковы, то и ответ у нас False