Python: задачки и вопросы
Kanalga Telegram’da o‘tish
Вопросы и задачки для подготовки к собеседованиям и прокачки навыков Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels Другие наши проекты: https://tprg.ru/media
Ko'proq ko'rsatish7 123
Obunachilar
-224 soatlar
+37 kunlar
Ma'lumot yo'q30 kunlar
Postlar arxiv
Выберите ВЕРНУЮ концепцию о функции из нижеперечисленных:
Код выводит (
1, [ ’ х ’ ], { ’ а ’ : ’ у ’ }) — первое присваивание в функции не оказывает влияния на вызывающий код, но остальные два оказывают, поскольку они модифицируют переданный изменяемый объект на месте.Код выводит
1 { ’ Ь ’ : 2, ’ с ’ : 3}, т.к. 1 передается а по имени и **kargs собирает оставшиеся ключевые аргументы в словарь. Мы можем проходить по ключам словаря с добавочными ключевыми аргументами с помощью любого итерационного инструмента (скажем, for key in kargs: . . .). Обратите внимание, что порядок следования ключей в словаре может варьироваться в зависимости от версии Python и других аспектов.Код выводит
1 (2, 3), поскольку 1 передается а и *pargs собирает оставшиеся позиционные аргументы в новый объект кортежа. Мы можем проходить по кортежу с добавочными позиционными аргументами посредством любого итерационного инструмента (например, for arg in pargs: . . .).Функция foo() ищет пересечение произвольного числа последовательностей (одной и более), используя форму сопоставления с переменным количеством аргументов
*аргументы для сбора всех переданных аргументов. Поскольку аргументы поступают в виде кортежа, мы можем обрабатывать произвольное число аргументов с целью сбора элементов, имеющихся во всех операндах:
def foo(*args):
res = []
for x in args[0]: # Просмотр последовательности
if x in res: continue # Пропуск дубликатов
for other in args[1:]: # Для всех остальных аргументов
if x not in other: break # Элемент находится во всех последовательностях?
else: # Нет: выйти из цикла
res.append(x) # Да: добавить в конец
return res
lst = (1, 3, 4, 3, 5)
print(foo(lst)) # [5]
В данном случае все сводится к блоку else (выходу из цикла) и добавлению последнего элемента в res.
Если подавать функции, например, два кортежа, результат будет другим:
lst = ((1, 3, 4), (3, 4, 5))
print(foo(lst)) # [(3, 4, 5)]— Сравнение строк основывается на их лексикографическом порядке, который определяется значениемUnicode каждого символа в строке ('apple' > 'banana' # False
— Сравнение чисел происходит по правилам математики (3 < 4 # True)
— А вот словари сравниваются (только оператором ==) , если у них одинаковые ключи. Операторами
> < их не сравнить, получим ошибку:
TypeError: '>' not supported between instances of 'dict' and 'dict'Ну где же ваши ручки!
А вот они, все в зрительном зале конференции Avito All Day Long, тянутся, чтобы задать каверзный вопрос спикерам!
Тоже есть что спросить у профессионалов Авито про интерфейсы, MLOps или отношения в коллективе? Тогда проходи в зрительный зал, присаживайся и слушай ответы, наверняка найдешь среди них что-то полезное и для себя: https://tprg.ru/XNil
Реклама
Какой тип данных не поддерживает прямое сравнение (a > b)?
Мы также можем применять в списке аргументов сам по себе символ
*, указывая на то, что функция не принимает список аргументов переменной длины, но по-прежнему ожидает передачи всех аргументов, следующих за символом *, по ключевому слову. В показанной в задаче функции kwonly() аргумент а может передаваться по позиции или по имени, но аргументы b и с обязаны передаваться по ключевому слову, и никакие добавочные позиционные аргументы не разрешены.Создавайте и проверяйте задания по программированию на GitVerse
На платформе для работы с исходным кодом GitVerse появился SmartClass — бесплатный инструмент для управления заданиями по программированию. С ним можно создавать, хранить и проверять задачи, а также автоматизировать ревью кода с помощью AI-ассистента GigaCode. В общем, все что нужно – теперь под рукой.
Пользователи SmartClass получают все преимущества платформы GitVerse, что дает начинающим специалистам возможность освоить профессиональные инструменты разработки. Решение позволяет не только изучать программирование и код, но и погрузиться в детали работы с такими инструментами и практиками, как CI/CD, Git и многими другими.
И, конечно, теперь смело можно отдать рутину аналитики заданий вашему верному помощнику – AI-ассистенту! За счет встроенных в платформу AI-расширений и AI-ассистента разработчика GigaCode вы можете за пару минут провести аналитику кода и значительно облегчить процесс проверки работ.
Переходите на GitVerse и пробуйте новый инструмент!
Это #партнёрский пост
Endi mavjud! Telegram Tadqiqoti 2025 — yilning asosiy insaytlari 
