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

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

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

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

Другие наши проекты: https://tprg.ru/media
Download Telegram
Какой синтаксис корректен для возвращения первого символа строки?
Anonymous Poll
76%
x = "Python: задачки и вопросы"[0]
12%
x = "Python: задачки и вопросы".sub(0, 1)
12%
x = sub("Python: задачки и вопросы", 0, 1)
Правильный ответ: x = "Python: задачки и вопросы"[0]

Это один из стандартных инструментов языка для возвращения символа строки по его индексу.
Каким будет результат выполнения кода выше?
Anonymous Poll
15%
Error
6%
[0, 1, 2]
78%
[-2, -1, 0]
1%
0
Правильный ответ: [-2, -1, 0]

Т.к. условие х < 1 в теле функции fnc() возвращает только те значения, которые меньше единицы, в итоговый список для вывода также будут включены лишь соответствующие числа из списка lst: -2, -1, 0.
Какая из этих функций сработает быстрее при n = 100000000
Anonymous Poll
13%
fast_function
30%
very_fast_function
28%
super_very_fast_function
29%
the_fastest_function_ever
Правильный ответ: very_fast_function

Операция создания быстрее для списка, а поиска — для множества. Но скорость поиска не компенсирует скорость создания и поэтому второй вариант будет самым быстрым.
Каким будет результат выполнения кода выше?
Anonymous Poll
32%
0 2 1 3 2 4
11%
0 1 2 3 4 5
1%
1 0 2 4 3 5
56%
Error
Правильный ответ: Error

В Python не существует оператора ++
Каким будет результат выполнения кода выше?
Anonymous Poll
21%
42
17%
Error
62%
21
Правильный ответ: 21

Создание экземпляра класса pyquiz автоматически вызывает метод __init__ и передаёт объект как параметр self. 21 присваивается атрибуту данных объекта с именем id. Значение 42 не сохраняется в объекте, поскольку оно не присвоено атрибуту данных класса/объекта. Итогом работы программы будет 21.
Каким будет результат выполнения кода выше?
Anonymous Quiz
47%
True
35%
False
9%
Зависит от устройства
9%
Error
Правильный ответ: False

Т.к. ни 0.1, ни 0.2, ни 0.3 нельзя точно представить в двоичном виде, накапливается большое количество ошибок в промежутке от 0.1 до 0.2. В итоге между (0.1 + 0.2) и 0.3 существует разница в 5.5511e-17.
Чему будет равно ~~~~~~5?
Anonymous Quiz
73%
+5
6%
-11
11%
+11
10%
-5
Объяснение:

~x равносильно -(x + 1)
А это значит, что ~~~~~~5 равносильно -(-(-(-(-(-(5 + 1) + 1) + 1) + 1) + 1) +1), т.е. 5