Python задачи и вопросы
1.23K subscribers
427 photos
1 file
154 links
Задачи и вопросы с собеседований по python разного уровня сложности

По рекламе: @cyberJohnny
Download Telegram
Как называется следующее выражение: `[x for x in range(10)]`?
Anonymous Quiz
66%
генератор списка
6%
генератор словаря
12%
генератор
16%
генератор кортежа
Имеется кортеж вида T = (4, 2, 3). Какая из операций приведёт к тому, что имя T будет ссылаться на кортеж (1, 2, 3)?
Anonymous Quiz
25%
T[0] = 1
20%
T = (1) + T[1:]
42%
T = (1,) + T[1:]
13%
T.startswith(1)
Пояснение к предыдущему посту👆

Поскольку кортежи неизменяемы, их нельзя модифицировать на месте, но можно создать новый кортеж с желаемым значением.

Изменить первый элемент можно за счёт создания нового кортежа из частей имеющегося с помощью срезов и конкатенации: Т = (1,) + Т [1: ]. При этом одноэлементные кортежи требуют хвостовой запятой, иначе число в скобках это всего лишь число.
Пояснение к предыдущему посту 👆

Часто в коде начинающих разработчиков на Python можно встретить объявление for - цикла в виде for i in range(len(numbers)), когда можно обойтись for num in numbers.

Если в коде действительно необходим и сам элемент, и его индекс, используйте enumerate().
👍4
Необходимо собрать и вывести все уникальные слова из строки рекламного текста. Какой из перечисленных типов данных Python подходит лучше всего?
Anonymous Quiz
11%
кортеж (tuple)
9%
список (list)
70%
множество (set)
10%
словарь (dict)
Какая из строчек кода выведет структуру, отсортированную в порядке увеличения возрастов животных?
Anonymous Quiz
43%
sorted(animals, key='age')
13%
Ни один вариант не является верным, два словаря нельзя сравнивать друг с другом.
38%
sorted(animals, key=lambda animal: animal['age'])
6%
sorted(animals)
Как вывести список методов и атрибутов объекта x?
Anonymous Quiz
23%
help(x)
22%
info(x)
3%
?x
52%
dir(x)
Как можно более кратко представить следующую запись?

if X: A = Y else: A = Z
Anonymous Quiz
6%
A = Y if Z else Y
82%
A = Y if X else Z
5%
A = X if Z else Y
7%
A = X if Y else Z
Какая из перечисленных инструкций выполнится быстрее всего, если n = 10**6?
Anonymous Quiz
18%
a = list(i for i in range(n))
31%
a = [i for i in range(n)]
38%
a = (i for i in range(n))
14%
a = {i for i in range(n)}
👍3
Что выведет данный код?
Anonymous Quiz
63%
True
11%
False
26%
Ошибку
Что выведет на экран следующий код?

a, *b, c = [1, 2] print(a, b, c)
Anonymous Quiz
15%
[1] [ ] [2]
47%
Будет вызвано исключение: элементов в списке меньше, чем переменных.
5%
1 0 2
34%
1 [ ] 2
👎7👍2
Пояснение к предыдущему вопросу 👆

Звёздочка соответствует оператору распаковки последовательности.
Два числа присваиваются переменным, а оставшаяся часть последовательности (в данном случае пустой список) присваивается переменной со звёздочкой.

Поэтому правильный ответ – 1 [] 2
С помощью Python нужно записать данные в файл, но только в том случае, если файла ещё нет. Какой режим указать в инструкции open()?
Anonymous Quiz
17%
'x'
37%
Никакой. Нужна предварительная проверка os.path.exists()
44%
'w'
3%
'r'
👎5👍3