Python: задачки и вопросы
7.65K subscribers
1.22K photos
2 videos
1 file
101 links
Вопросы и задачки для подготовки к собеседованиям и прокачки навыков

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

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

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

Другие наши проекты: https://tprg.ru/media
Download Telegram
Каким будет результат выполнения кода выше?
Anonymous Quiz
77%
aaaaaaaaa ("a" 9 раз)
7%
aaaaaa ("a" 6 раз)
1%
aaa ("a" 3 раза)
15%
Error
Каким будет результат выполнения кода выше?
Anonymous Quiz
62%
global local
6%
local global
2%
None
30%
Error
Объяснение:

Переменная x объявлена после того, как мы пытаемся её вывести

Python выдаст ошибку о том, что локальная переменная x ссылается до присваивания
Объяснение:

Операция возведения в степень (**) имеет более высокий приоритет, чем умножение (*)

Поэтому сначала происходит 3 ** 2 = 9, а уже затем "а" * 9. Отсюда и ответ aaaaaaaaa ("а" 9 раз)
Каким будет результат выполнения кода выше?
Anonymous Quiz
53%
True
29%
False
2%
None
16%
Error
Объяснение:

В Python кортежи сравниваются лексикографически: первый элемент с первым, второй с вторым и так далее

Поскольку все первые элементы равны, сравнение переходит к следующему элементу, и кортеж (1, 2, -1) считается больше
Каким будет результат выполнения кода выше?
Anonymous Quiz
78%
True
12%
False
4%
None
6%
Error
Объяснение:

Функция isinstance(1 + 1j, complex) проверяет, является ли значение 1 + 1j экземпляром класса complex, который представляет комплексные числа в Python

И так как 1 + 1j действительно является комплексным числом, ответ на этот запрос будет True
Каким будет результат выполнения кода выше?
Anonymous Quiz
24%
abc1abc2abc3
36%
1abc2abc3
18%
a1b2c3
23%
Error
Объяснение:

Метод join() вставляет строку, поданную в качестве аргумента, между каждым символом исходной строки
Каким будет результат выполнения кода выше?
Anonymous Quiz
58%
True
37%
False
2%
None
3%
Error
Объяснение:

В Python строки являются неизменяемыми объектами и иногда для оптимизации Python использует один и тот же объект для хранения идентичных строковых литералов

Но это не гарантировано для строк, созданных динамически или через операции, как в данном примере с конкатенацией

Оператор is проверяет идентичность объектов, а не их эквивалентность. А так как z и "123456" — это разные объекты в памяти, даже если их значения одинаковы, то и ответ у нас False
Каким будет результат выполнения кода выше?
Anonymous Quiz
26%
10
43%
20
11%
True
20%
Error
Объяснение:

Оператор << сдвигает биты влево

В данном случае, 5 в двоичной системе — 101. Сдвиг на 2 бита влево даст 10100, что равно 20 в десятичной системе