Python: задачки и вопросы
7.73K subscribers
1.19K photos
1 video
1 file
91 links
Вопросы и задачки для подготовки к собеседованиям и прокачки навыков

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels

Другие наши проекты: https://tprg.ru/media
Download Telegram
Объяснение:

func(x) возвращает анонимную (лямбда) функцию, которая складывает аргумент x с переданным в неё аргументом y

Конструкция func(5)(10) вызывает функцию func() с аргументом 5, что возвращает лямбда-функцию и возвращённую лямбда-функцию с аргументом 10, которая выполняет сложение и возвращает результат

В результате выполнения func(5)(10) будет возвращено значение 15
Объяснение:

Возможно, вы уже слышали, что в Python существуют специальные символы, начинающиеся с обратного слэша. Большинство из них приведены в таблице выше.

Уже поняли в чём соль? В нашей задаче, использовалась строка "\turtle", из-за \t сработала табуляция, и мы не получили ожидаемого результата. Чтобы избежать подобных ситуаций, можно использовать "сырые" строки (raw strings).

Приставка r к строке указывает Python, что это raw-строка:

path = r"C:\Program Files\turtle game"


В качестве альтернативы способу выше мы также можем добавить дополнительный слеш:

path = "C:\\Program Files\\turtle game"


В обоих случаях Python поймет, что мы не хотим использовать специальные символы внутри строки, а просто хотим, чтобы строка отображалась как есть.
Объяснение:

Мы уже публиковали викторину по форматированию f-строк. Если вы её пропустили, то попробуйте решить ещё и её.

А теперь кратко о символе ^. Этот символ указывает Python, что подстрока должна быть выровнена по центру внутри строки длиной 25 символов. Остальные незанятые подстрокой символы заполняются указанным символоми переменной fill_char.

Давайте повторим, как использовать выравнивание в f-строках:
< — подстрока выравнивается по левому краю.
> — подстрока выравнивается по правому краю.
^ — подстрока выравнивается по центру.

Попробуйте поэкспериментировать с различными символами выравнивания, чтобы увидеть, как они изменяют результат.
Каким будет результат выполнения кода выше?
Anonymous Quiz
42%
filter
5%
int
35%
list
19%
tuple
Объяснение:

В процессе фильтрации в задаче используется функция filter, которая возвращает объект класса filter, а не непосредственный список или другой итерируемый объект. Это происходит потому, что мы не преобразовываем результат filter в конкретный тип данных (например, список или кортеж). Если бы мы попробовали напрямую вывести результат выполнения filter, он бы отобразился как <filter object at ...> с указанием места в памяти.
Каким будет результат выполнения кода выше?
Anonymous Quiz
44%
3
28%
6
19%
7
9%
Error
Объяснение:

Каждый раз, когда i % 3 != 0, мы переходим к следующей итерации цикла. Таким образом, значение c увеличивается лишь при i = 0 и в случае, когда i делится на 3 без остатка (здесь это 3 и 6)
Каким будет результат выполнения кода выше?
Anonymous Quiz
26%
13.37
12%
1337
43%
1337.0
20%
ValueError
Объяснение:

Подчёркивание — это разделитель, который используется для повышения удобности читаемости, но который игнорируется синтаксисом Python

Поэтому здесь float() сработал так же, как если бы мы ему передали не '13_37', а '1337'
Каким будет результат выполнения кода выше?
Anonymous Quiz
4%
16
29%
8
2%
2
65%
Error
Объяснение:

Попались?) В этом коде есть ошибка из-за неправильного отступа, поэтому правильный результат будет Error. Если исправить этот момент, то мы, конечно же, получим 8.