uz
Feedback
Python: задачки и вопросы

Python: задачки и вопросы

Kanalga Telegram’da o‘tish

Вопросы и задачки для подготовки к собеседованиям и прокачки навыков Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels Другие наши проекты: https://tprg.ru/media

Ko'proq ko'rsatish
7 125
Obunachilar
Ma'lumot yo'q24 soatlar
+67 kunlar
Ma'lumot yo'q30 kunlar
Postlar arxiv
Какой встроенный модуль позволяет замерить время исполнения кода?
Anonymous voting

На каждой итерации внутреннего цикла вам доступен элемент x из первого списка и элемент y из второго списка, и вы выполняете сложение этих двух значений: x + y. Результат каждого сложения добавляется в множество a. Множество автоматически удаляет дубликаты.

Что выведет код?
Anonymous voting

#ловушка
#ловушка

x * x for x in range(10) вычисляет квадрат числа x для каждого четного числа x в диапазоне от 0 до 9 (то есть 0, 2, 4, 6, 8). Фигурные скобки и x: обозначают генерацию словаря, где в качестве ключа будет выступать исходный четный x (то есть числа 0, 2, 4, 6, 8). Ключи словаря тоже не упорядочиваются, потому в разных версиях интерпретаторов мы будем получать разный порядок ключей.

Что выведет код?
Anonymous voting

#размяться
#размяться

Генератор выражений: x * x for x in range(10) вычисляет квадрат числа x для каждого числа x в диапазоне от 0 до 9 (то есть от 0 до 9 включительно). 2. set: Функция set() берет все значения, производимые генератором, и добавляет их в множество. Итак, в результате формируется множество, содержащее значения: {0, 1, 4, 9, 16, 25, 36, 49, 64, 81} В Python множество (set) не гарантирует порядок элементов, и при каждом запуске программы в разных версиях языка он будет отличаться.

Что выведет код?
Anonymous voting

#ловушка
#ловушка

for Y in range(5): pass # Операторы циклов имена не локализуют

Что выведет код?
Anonymous voting

#размяться
#размяться

Функция pd.set_option() в библиотеке Pandas позволяет настраивать различные параметры отображения и поведения датафрейма, улучшая пользовательский опыт. Она позволяет изменять такие настройки, как максимальное количество отображаемых строк и столбцов, точность представления чисел, форматирование дат и времени, а также задавать бэкенд-движки при чтении файлов Excel, баз SQL и проч. Пользователи могут установить параметры как глобально, так и для конкретных сессий, что позволяет тонко настраивать визуализацию данных под свои нужды. Доступные параметры можно просмотреть с помощью pd.get_option() и pd.describe_option(), что упрощает управление настройками. Документация

Что можно настроить с помощью pd.set_option()?
Anonymous voting

Проще запомнить, кто есть кто, если обратить внимание на тип возвращаемого объекта:

[х * х for х in range (10)] # Списковое включение: строит список
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81] # Подобно list(генераторное выражение)

(х * х for х in range (10)) # Генераторное выражение:  Генераторное выражение:
<generator object <genexpr> at 0x10451eb50> # Круглые скобки часто необязательны

{x * x for x in range (10)} # Включение множества
{0, 1, 64, 4, 36, 9, 16, 49, 81, 25}

{x: x * x for x in range(10)} # Включение словаря,
{0: 0, 1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64, 9: 81}

Какая строка на картинке является генераторным выражением?
Anonymous voting

#размяться
#размяться

Код выводит [(‘a’, ‘x’), (‘b’, ‘y’), (‘c’, ‘z’), (None, ‘1’), (None, ‘2’), (None, ‘3’)], потому что добавляет "заполнители", когда длина последовательностей различается. Строка maxlen = max(len(S) for S in seqs) вычисляет максимальную длину среди всех предоставленных последовательностей — в данном случае это 6. index = range(maxlen) создаёт диапазон от 0 до 5 (включительно), то есть будет 6 итераций. С помощью списка включений формируется результирующий список. Для каждой итерации (с каждым индексом i от 0 до 5) создается кортеж: tuple((S[i] if len(S) > i else pad) for S in seqs) Это выражение проверяет, есть ли элемент с индексом i в последовательности S. Если элемент существует, он добавляется в кортеж, если не существует (что происходит, как в случае со строкой S1 на индексах 3, 4 и 5), добавляется значение pad, которое по умолчанию равно None. - Для i = 0: получаем ('a', 'x') - Для i = 1: получаем ('b', 'y') - Для i = 2: получаем ('c', 'z') - Для i = 3: строка S1 не имеет элемента, поэтому получаем (None, '1') - Для i = 4: строка S1 тоже не имеет элемента, получаем (None, '2') - Для i = 5: строка S1 снова не имеет элемента, получаем (None, '3')

Что выведет код?
Anonymous voting