Python: задачки и вопросы
7.7K 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
Объяснение:

Здесь у нас используются функции iter() и next() для работы со строкой "Hello there!"

Функция iter() преобразует строку в итератор, что позволяет последовательно получать доступ к её элементам. Строка "Hello there!" состоит из символов, и итератор будет возвращать эти символы по одному за раз

Функция next(), когда применяется к итератору, возвращает следующий элемент последовательности

Поскольку итератор только что создан, next() вернет первый элемент строки "Hello there!", который является символом 'H'
Каким будет результат выполнения кода выше?
Anonymous Quiz
19%
No Yes No No
52%
Yes No
7%
No Yes
21%
Error
Объяснение:

func() проверяет, содержится ли число num в списке lst

Если число найдено, функция выводит "Yes" и немедленно завершается благодаря return

Если число не найдено (после завершения цикла for), выполняется блок else, и функция выводит "No"

Поэтому при вызове func(lst, 1), она выводит "Yes", так как 1 есть в списке, а при вызове func(lst, 3), она выводит "No", так как 3 в списке нет
Каким будет результат выполнения кода выше?
Anonymous Quiz
34%
{float: 3.14, str: 'Pi}
37%
{<class 'float'>: 3.14, <class 'str'>: 'Pi'}
2%
{}
28%
Error
Объяснение:

В словаре dct ключами являются типы данных float и str, а не их значения

Таким образом, в словаре содержатся две пары ключ-значение: первый ключ — это тип данных float, а его значение — 3.14; второй ключ — это тип данных str, а его значение — строка "Pi"

Поэтому при печати словаря dct, мы увидим его содержимое в формате {<class 'float'>: 3.14, <class 'str'>: 'Pi'}, где <class 'float'> и <class 'str'> являются ключами, представляющими собой типы данных
Каким будет результат выполнения кода выше?
Anonymous Quiz
65%
True
28%
False
2%
None
5%
Error
var1 и var2 являются множествами

Особенность множеств в Python заключается в том, что они не содержат дубликатов и не упорядочены

Таким образом, оба множества var1 и var2 после удаления дубликатов будут содержать одни и те же элементы: {1, 2, 3}

Поскольку оба множества содержат одни и те же элементы, выражение var1 == var2 возвращает True
Каким будет результат выполнения кода выше?
Anonymous Quiz
17%
hello
11%
world
12%
None
60%
Error
Объяснение:

Словари (dict) и множества (set) не могут быть использованы в качестве ключей в другом словаре, так как они являются изменяемыми типами данных и не хешируемы

Попытка создать словарь dct с ключами типа dict и set приведёт к ошибке TypeError
Каким будет результат выполнения кода выше?
Anonymous Quiz
21%
(None, )
40%
()
9%
None
30%
Error
Объяснение:

Код содержит ошибку синтаксиса при определении кортежа tup

В Python кортеж должен содержать хотя бы один элемент, и если он состоит из одного элемента, после этого элемента должна стоять запятая

Например, кортеж с одним элементом записывается как (element,)

У нас же tup = (,) является некорректным, так как после открывающей скобки и перед закрывающей скобкой нет элементов, что вызовет ошибку синтаксиса
Каким будет результат выполнения кода выше?
Anonymous Quiz
34%
ABC DEF
40%
Abc Def
23%
Abc def
2%
abc def
Объяснение:

Метод capitalize() в Python преобразует первый символ строки в верхний регистр (заглавную букву) и оставляет остальные символы в нижнем регистре

Тут мы применили этот метод к строке "abc DEF", а потому первый символ 'a' преобразуется в 'A', в то время как все остальные символы, включая 'D', 'E' и 'F', переводятся в нижний регистр

В результате получается строка "Abc def"