25092
Pythonist.ru - помощь в подготовке к собеседованию на позицию Python Developer. Реклама: @anothertechrock РКН: https://rknn.link/car
Тест. Операторы и выражения
Операторы и выражения в Python — это основы основ. Такие вещи, как отличие == от is, каждый программист обязан знать на «отлично»! Проверьте, знаете ли их вы!
#тест
Машинное обучение. Учебник по Pandas для начинающих
Pandas предоставляет невероятно богатый набор функций, позволяющий ускорить любой процесс работы с данными. В этой статье вы найдете довольно объемное пособие по работе с Pandas, хотя, разумеется, оно не будет исчерпывающим.
Книги по ML - @maschinelearning
#ml
Tips & Tricks. Циклы в Python: их сравнение и производительность
В этой статье мы сравнили производительность различных способов поэлементного суммирования двух последовательностей (при помощи цикла while, цикла for, представления списков, а также с использованием библиотеки NumPy).
#tipsandtricks
Топ. Удаление дубликатов из связного списка в Python
Разбираем задачу с собеседования и пишем код для удаления дубликатов из связного списка.
#списки #словари
Задача для новичков
Напишите функцию lexicalOrder(), которая принимает на вход целое число n, а возвращает список чисел в диапазоне от 1 до n, отсортированный в лексикографическом порядке. Программа должна работать за линейное время (O(n)), а расход пямяти O(1).
Примеры:lexicalOrder(13) --> [1, 10, 11, 12, 13, 2, 3, 4, 5, 6, 7, 8, 9]Свои варианты пишите в комментариях! Решение - сегодня вечером.
lexicalOrder(2) --> [1, 2]
#задача #coding
Функции в Python: замыкания
В этой статье:
- нелокальная переменная во вложенной функции;
- определение замыкания;
- когда мы имеем дело с замыканием;
- когда стоит использовать замыкания.
#функции
Tips & Tricks. Как удалить ключ из словаря в Python
В этом руководстве мы расскажем, как безопасно удалить ключ из словаря в Python. Под безопасностью мы подразумеваем, что код не выдаст вам ошибку при попытке удалить несуществующий ключ.
Мы рассмотрим три способа удаления ключа из словаря. Вы узнаете, как это сделать, используя метод .pop(), ключевое слово del, а также генератор словаря. Также мы остановимся на том, как удалить сразу несколько ключей.
#tipsandtricks
Задача с кодом. Маленькая большая последовательность
Дана следующая последовательность чисел:
5, 100, 6, 200, 7, 400, 8, 800, 9, 1600, 10, 3200, ...
На позиции 1 стоит число 5. Напишите функцию, которая будет возвращать число на позиции n в этой последовательности.
Примеры:
little_big(4) ➞ 200Примечание: исходим из того, что input всегда будет валидным.
little_big(5) ➞ 7
little_big(28) ➞ 819200
Топ. Итераторы в Python
Разбираем, что такое итерируемые объекты и итераторы. Подробно и доходчиво, с примерами кода.
#топ
Машинное обучение. Практическое руководство по Theano
Вероятно, вы уже где-то слышали о Theano, но знаете ли вы, что это такое? Язык программирования? Компилятор? Библиотека Python? На самом деле, всё перечисленное!
Theano был разработан для компиляции, реализации и оценки математических выражений очень эффективным способом. По сути, он позволяет разработчику выполнять код, используя как CPU, так и GPU.
Книги по ML - @maschinelearning
#ml
Задача на логику. Число 24
Число 24 легко выразить тремя восьмерками: 8+8+8. Но можете ли вы сделать то же, пользуясь не восьмерками, а другими тремя одинаковыми цифрами? Задача имеет не одно решение.
#логическаязадача
Задача с кодом. Фруктовые соки
Завод по производству фруктовых соков помечает свою продукцию специальными идентификаторами. Каждый ID составляется из трех первых букв названия фрукта и объема упаковки.
Напишите функцию, которая будет создавать ID продукта для фруктовых соков.
Примеры:get_drink_ID("apple", "500ml") ➞ "APP500"Примечания:
get_drink_ID("pineapple", "45ml") ➞ "PIN45"
get_drink_ID("passion fruit", "750ml") ➞ "PASFRU750"
- Объем упаковки будет передаваться в виде строки, всегда в миллилитрах.
- Буквы нужно возвращать в верхнем регистре.
Решение на нашем сайте.
#задача #coding
Ответ к предыдущей задаче для новичков
def containsNearbyDuplicate(nums: list[int], k: int) -> bool:#задача #coding Читать полностью…
num_dict = {}
for i in range(len(nums)):
if nums[i] in num_dict and abs(i - num_dict[nums[i]]) <= k:
return True
num_dict[nums[i]] = i
return False
Топ. Руководство по PyGame
В этом руководстве мы подробно познакомимся с библиотекой PyGame и посмотрим, как с ее помощью можно создавать простые игры.
#топ
Tips & Tricks. Красивая распечатка словаря в Python 3
Разобрали для вас, как с помощью модуля json красиво распечатать словарь, чтобы он был отсортированный и с отступами.
#tipsandtricks
Задача на логику. Ищем кошку
У вас есть 5 коробок, расставленных в ряд. Коробки пронумерованы от 1 до 5. В одной из них прячется кошка. Каждую ночь кошка перепрыгивает в какую-то из соседних (смежных) коробок. Каждый день вы можете открыть 1 коробку, чтобы найти кошку. Как выиграть в этой игре? В каком порядке нужно заглядывать в коробки?
Решение тут. Просьба потратить хотя бы 10 минут перед тем как читать решение.
#логическаязадача
Студентам ИТ-направлений
Участие в опросе займет 10 минут, но внесет
вклад в развитие ИТ-рынка в России и СНГ.
https://l.t-gorod.org/students
Задача с кодом. Счастливая семерка
Напишите функцию, которая будет принимать список чисел и проверять, можно ли сложить любые три разные числа из этого списка так, чтобы получить число 7.
Примечания:
- В списке всегда будут только числа.
- Естественно, если в списке меньше трех элементов, функция должна вернуть False.
Примеры:
lucky_seven([2, 4, 3, 8, 9, 1]) ➞ TrueРешение на нашем сайте.
lucky_seven([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]) ➞ True
lucky_seven([0, 0, 0, 2, 3]) ➞ False
# Нельзя повторять одно число дважды, т.е. вариант 2 + 2 + 3 = 7 невозможен.
lucky_seven([4, 3]) ➞ False
# Нужны три разных числа.
Ответ к предыдущей задаче для новичков
def lexicalOrder(n: int) -> list[int]:#задача #coding Читать полностью…
return [int(i) for i in sorted(str(i) for i in range(1, n + 1))]
One Day Offer для Data Science
Пройди fast-интервью и получи оффер в Сбере за один день.
Присоединяйся к команде, которая разрабатывает и внедряет DS-решения в точки касания клиента со Сбером (отделения, мобильное приложение, банкоматная сеть, колл-центр, канал Премьер и т.д.).
За год мы разрабатываем и внедряем более 200 моделей, а в работе используем Python, Spark, SQL, Hadoop, GreenPlum.
С нами ты будешь:
• обучать все типы моделей искусственного интеллекта: от классического ML до глубоких нейронных сетей.
• создавать высокотехнологичные сервисы: от систем принятия решений до компьютерного зрения и обработки естественного языка.
• развивать хранилище Блока на Teradata и DataLake на Hadoop.
Работа в крупнейшем IT-сообществе в главном офисе Сбера на Кутузовской ждет тебя. Регистрируйся на One Day Offer
Задача на логику. Слепые игры
Ты сидишь в помещении, где царит полная темнота, а посередине лежит доска. На ней размещено 50 карт, среди которых 10 лежат рубашкой вверх, а 40 карт — рубашкой книзу.
Задача состоит в том, чтобы разделить этот набор из 50 карт на 2 группы (необязательно одного размера) таким образом, чтоб в обеих кучах находилось одно и то же количество карт рубашкой вверх. Как это сделать?
Решение тут. Просьба потратить хотя бы 10 минут перед тем как читать решение.
#логическаязадача
PythonBooksRu - канал для скачивания Python книг на русском языке.
Что в нашем канале:
1. Книги по питону, которые помогут вам пройти собеседование на позицию Python Developer.
2. Все книги на русском языке
3. Все книги можно скачать в 2 клика
4. Всё, никакой другой воды.
Подписывайтесь и качайте книги: @pythonbooksru
Станьте специалистом широкого профиля в работе с данными — научитесь разрабатывать архитектуру данных на курсе Яндекс Практикума.
За 6,5 месяцев мы научим:
◾️ проектировать хранилища и пайплайны;
◾️ использовать инструменты DE: оркестраторы, контейнеры и не только;
◾️ работать со стриминговой обработкой данных и облачными хранилищами;
◾️ создавать хранилища Data Warehouse и Data Lake.
→ Пройдите вводное тестирование курса до 30 ноября и получите промокод со скидкой 20%. Пусть Чёрная Пятница станет поводом сделать карьерный рывок!
Тест на умение объединять и разделять строки
При работе со строками программисту нередко приходится их объединять и делить на части. Проверьте, насколько хорошо вы умеете это делать и разбираетесь ли в конкатенации.
#тест #строки
Ответ к задаче "Число 24"
22 + 2 = 24
3^3 - 3 = 24
#логическаязадача
Алгоритм сортировки подсчетом на Python
Давайте разберем программу, сортирующую список методом подсчета (Counting sort). Пример кода и гифка для наглядности прилагаются.
#алгоритмы
Топ. Операторы в Python
В этой статье мы поговорим про различные операторы в Python. Мы на примерах разберем арифметические, битовые и логические операторы, а также операторы присваивания и сравнения. Кроме того, мы рассмотрим операторы принадлежности и идентичности, такие как is, is not и in, not in.
#топ
Задача для новичков
Напишите функцию containsNearbyDuplicate(self, nums: list[int], k: int) -> bool, которая принимает на вход массив целых чисел nums и целое число k.
Данная функция должна возвращать True, если в массиве есть два различных индекса i и j, таких, что nums[i] == nums[j] и abs(i - j) <= k. В противном случае возвращается False.
Примеры работы данной функции:containsNearbyDuplicate([1,2,3,1], 3) --> TrueСвои варианты пишите в комментариях! Решение - сегодня вечером.
containsNearbyDuplicate([1,0,1,1], 1) --> True
containsNearbyDuplicate([1,2,3,1,2,3], 2) --> False
#задача #coding
Задача на логику. Встреча часовой и минутной стрелки на часах
В полдень положение часовой и минутной стрелок на часах полностью совпадает. В следующий раз их положение совпадет чуть позже, чем через час. Назовите точное время следующего совпадения часовой и минутной стрелки.
Решение тут. Просьба потратить хотя бы 10 минут перед тем как читать решение.
#логическаязадача
😎 Балансировка нагрузки для высоконагруженных приложений на Python
С ростом проекта увеличивается число пользователей и размер трафика на сервис, что может привести к повышенной нагрузке на сервер. Чтобы избежать долгого отклика от сервера и потерю пользователей, необходимо распределить нагрузку между несколькими серверами.
В решении этой задачи вам поможет сервис «Балансировщик нагрузки». Например, в SpaceWeb балансировщик представляет собой отдельный контейнер с настройками под ваши потребности:
🔺Распределение нагрузки по алгоритму Round Robin или Least Connections.
🔺Протоколы доступа HTTP, HTTPS и TCP с возможностью указать порт.
🔺Размещение балансировщика в дата-центре SpaceWeb: можно выбрать ЦОД в Санкт-Петербурге или Москве.
🔺Выделенный внешний IP-адрес балансировщика.
🔺Дополнительные настройки: Proxy protocol, Backend keep-alive и запоминание сессии.
Если перед вами стоит вопрос повышения отказоустойчивости инфраструктуры на Python, то рекомендуем узнать больше о работе балансировщика нагрузки в бортовом журнале SpaceWeb.
🌐 Читать статью
Реклама. ООО "СпейсВэб". erid: 2VtzquWcy58