25092
Pythonist.ru - помощь в подготовке к собеседованию на позицию Python Developer. Реклама: @anothertechrock РКН: https://rknn.link/car
Задача с кодом. Сколько полных оборотов?
Дан список, состоящий из произвольного числа направлений поворотов («left» и/или «right»). Напишите функцию, которая будет принимать этот список и определять, сколько полных оборотов сделано.
Примечания:
- Каждый поворот влево или вправо считается поворотом на 90 градусов.
- Один оборот = 360 градусов в одном направлении.
- Вернуть надо положительное число.
Примеры:
spin_around(["left", "right", "left", "right"]) ➞ 0
spin_around(["right", "right", "right", "right", "right", "right", "right", "right"]) ➞ 2
spin_around(["left", "left", "left", "left"]) ➞ 1
Тест. Django ORM
Умеете ли вы работать с базами данных с помощью Django ORM? Давайте проверим!
#тест #django
Айтишники уже всех задолбали😡
Везде выёживаются своими зарплатами. Хотя такие же деньги может зарабатывать любой, кто хоть раз держал в руках отвёртку. Не веришь?
Смотри, что Дима Иванов пишет. Он просто покупает и перепродаёт компы, делая на этом большие деньги. А ещё учит этому подписчиков, спокойно зарабатывать от 100к в месяц!
Он даёт понятные пошаговые инструкции, которым просто нужно следовать. Будто готовишь суп - написано нарезать лук - режешь, написано варить 20 минут - варишь. Результат зависит лишь от того, насколько точно ты выполняешь эти действия 🤷
👉 Можно уйти с найма
👉 Можно подрабатывать по вечерам
👉 Можно начать с полного нуля
Да тут даже бабуля справится. Подписывайся на Димана и делай деньги.👇
/channel/+yp7mPLLnJXY1ODIy
Tips & Tricks. Замена пробелов на указанные символы.
Пошагово разбираем задачу с собеседования. Пишем функцию для замены всех пробелов в строке на '%20'.
#tipsandtricks #строки #методы
Модули. Как использовать модуль Pathlib
Все операционные системы имеют разные правила построения путей к файлам. Например, в Linux для путей используется косая черта (слэш, /), а в Windows — обратная косая черта (обратный слэш, \).
Эта небольшая разница может вызвать ряд проблем, если вы работаете над проектом и хотите, чтобы разработчики могли работать с вашим кодом и в других операционных системах.
К счастью, если вы программируете на Python, модуль Pathlib сделает за вас всю тяжелую работу. Он обеспечит одинаковую работу ваших путей к файлам в разных операционных системах.
#модули
Задача для новичков
У вас есть n монет, из которых нужно построить лестницу. Лестница состоит из k рядов, в первом из которых строго одна монета, а в следующих на одну монету больше в каждом последующем. Соответственно, последний ряд может быть неполным. Вот пример такой лестницы:
$Как видите, тут 4-й ряд неполон.
$ $
$ $ $
$ $ $
arrangeCoins(), которая принимает на вход целое число n (количество монет), а выводит количество полных рядов лестницы.arrangeCoins(8) --> 3
arrangeCoins(5) --> 2
Свои варианты пишите в комментариях! Решение - сегодня вечером.
Ответ к задаче "Число 1000"
888 + 88 + 8 + 8 + 8 = 1000.
(2222 - 222) / 2 = 1000.
Во втором решении цифру 2 можно заменить на любую другую (разумеется, кроме нуля).
#логическаязадача
Tips & Tricks. Unexpected exception
Разбираемся, как выводить информативные сообщения пойманных исключений.
#tipsandtricks
Тест. Числовой тип в Python
Числовой тип в Python довольно прост и интуитивно понятен. Но, разумеется, прост он для тех, кто разобрался в теме. А вы хорошо разобрались? Проверьте: пройдите наш тест!
#тест
PM-Guru - канал проджект менеджеров в IT или тех, кто хочет ими стать.
- управление проектами
- методологии разработки
- практики от опытных ПМ
- практики управления IT командами
- книги
- вопросы с собеседований
Подписывайтесь и узнайте, каково это - руководить программистами в компании. 😜
Tips & Tricks. Замер времени выполнения куска кода
Модуль timeit позволяет замерить время выполнения любого куска кода.
#tipsandtricks #модули
Tips & Tricks. Как проверить наличие ключа в словаре в Python
В этом уроке мы рассмотрим четыре наиболее часто используемых способа проверки существования ключа в словаре на языке Python.
#tipsandtricks #словари
Задача для новичков
Напишите функцию findMissedNumbers(), на вход которой подается список длинной n, состоящий из целых чисел в диапазоне от 1 до n. Данная функция должна вернуть список всех чисел, которые отсутствуют во входящем списке, но входят в диапазон от 1 до n.
Пример работы данной функции:findMissedNumbers([4,3,2,7,8,2,3,1]) --> [5, 6]Свои варианты пишите в комментариях! Решение - сегодня вечером.
findMissedNumbers([1, 1, 1]) --> [2, 3]
#задача #coding
Ответ к задаче "Два города"
Нужно просто спросить, живет ли человек в этом городе. Если он ответит "да", то это город честных. Если "нет" - город лжецов.
#логическаязадача
Tips & Tricks. Сравнение неупорядоченных списков
Рассказали, как эффективно по отношению к памяти сравнить два неупорядоченных списка.
#tipsandtricks #списки
Топ. Вывод всех чисел, кратных определенному числу, в заданном диапазоне
Разбираем решение задачи. Пишем программу, выводящую все числа в заданном диапазоне, которые делятся без остатка на определенное число.
#топ
Строки. Преобразование строк в дату со временем
Знакомимся с модулем datetime, его методами и расширениями, а также со сторонними библиотеками для работы с датами и временем.
#строки
Задача на логику. Носки и перчатки
В одном ящике лежит 10 пар коричневых и 10 пар черных носков. В другом — 10 пар коричневых и 10 пар черных перчаток.
По сколько носков и перчаток нужно взять из каждого ящика, чтобы из взятого можно было составить пару носков какого-нибудь одного цвета и пару перчаток одного цвета? (Носки и перчатки могут различаться по цвету, но пары должны быть одноцветными).
Решение тут. Просьба потратить хотя бы 10 минут перед тем, как читать решение.
#логическаязадача
Задача с кодом. Число Керзона
Если 2^N+1 без остатка делится на 2*N+1, то число N считается числом Керзона.
Реализуйте функцию, которая будет принимать целое число num и возвращать True, если num — число Керзона, и False — если нет.
Примеры:
is_curzon(5) ➞ TrueРешение на нашем сайте.
# 2 ** 5 + 1 = 33
# 2 * 5 + 1 = 11
# 33 кратно 11
is_curzon(10) ➞ False
# 2 ** 10 + 1 = 1025
# 2 * 10 + 1 = 21
# 1025 не кратно 21
Ответ к предыдущей задаче для новичков
def arrangeCoins(n: int) -> int:#задача #coding Читать полностью…
counter = 0
m = 0
row = 1
while m <= n:
m += row
row += 1
counter += 1
return counter if counter == row else counter - 1
Топ. Как писать чистый код на Python
Python — один из наиболее элегантных и чистых языков программирования. Но красивый и чистый синтаксис не означает чистый код. И не избавляет разработчиков от необходимости изучать наилучшие приемы и шаблоны проектирования.
#топ
Задача на логику. Число 1000
Можете ли вы число 1000 выразить восемью одинаковыми цифрами? (Также можно пользоваться знаками действий).
#логическаязадача
Как работает функция return() в Python?
Для получения значения из функции в языках программирования обычно используется оператор return(). Точно так же и в Python оператор return() используется для выхода из функции и возврата значения из функции. В этом уроке мы рассмотрим различные способы использования return() в Python.
#функции
Модули. 7 интересных модулей Python, которые стоит попробовать
В этой статье:
1. Pyperclip
2. Emoji
3. Wikipedia
4. Howdoi
5. Antigravity
6. urllib
7. Turtle
#модули
Задача на логику. Четыре человека, один подвесной мост и зомби, следующие по пятам
Студент, лаборантка, уборщик и старый профессор бегут от зомби. Впереди у них подвесной мост. Если они успеют его перейти, смогут обрезать веревки и оторваться от зомби. Но!
Все беглецы движутся с разной скоростью: студент может перебежать мост за минуту, лаборантка — за 2 минуты, уборщику понадобится 5 минут, старый профессор доковыляет за 10.
Профессор подсчитал, что зомби доберутся до моста через 17 минут. А мост одновременно может выдержать только двоих! Да еще и ночь: ничего не видно. У группы есть только один фонарь, и им придется передавать его друг другу, потому что у идущих по мосту (одного или двоих) фонарь должен быть обязательно.
Как всем успеть перейти через мост до прихода зомби?
Решение тут. Просьба потратить хотя бы 10 минут перед тем как читать решение.
#логическаязадача
Задача с кодом. Бит четности
Биты четности используются для проверки того, не были ли нарушены двоичные данные в ходе передачи. Работают они следующим образом:
- Если двоичная строка содержит нечетное количество единиц, бит четности — 1.
- Если двоичная строка содержит четное количество единиц, бит четности — 0.
- Бит четности добавляется в конец двоичной строки.
Задание
Создайте функцию, которая будет при помощи битов четности проверять, валидна ли двоичная строка.
Рабочий пример
validate_binary("10110010") ➞ True
# Последняя цифра - бит четности.
# 0 - последняя цифра.
# 0 означает, что число единиц должно быть четным.
# Здесь 4 единицы.
# Возвращаем True.
validate_binary("00101101") ➞ True
validate_binary("11000000") ➞ True
validate_binary("11000001") ➞ False
Примечание: в инпуте всегда будет 8 символов (байт).
Ответ к предыдущей задаче для новичковdef findMissedNumbers(nums: list[int]) -> list[int]:А вот более быстрый вариант, который работает за линейное время:
return [i for i in range(1, len(nums) + 1) if i not in nums]def findMissedNumbers(nums: list[int]) -> list[int]:#задача #coding
return list(set(range(1, len(nums) + 1)) - set(nums))
Функции. Удаление файла — пошаговое руководство
Рассказываем, как удалять файлы при помощи методов os.remove(), os.rmdir() и shutil.rmtree().
#модули #функции
Задача на логику. Два города
В некоторой стране есть два города. В одном из них живут только люди, которые всегда говорят правду, в другом - только те, кто всегда лжет. Все они ходят друг к другу в гости, т.е. в любом из этих двух городов можно встретить как честного человека, так и лжеца.
Предположим, вы оказались в одном из этих городов. Как, задав один-единственный вопрос первому встречному, определить, в какой город вы попали?
#логическаязадача
Задача с кодом. Подсчет цифр
Напишите функцию, подсчитывающую количество одинаковых цифр в числе.
Условия:
- функция принимает число (исходим из того, что числа будут целыми и положительными)
- каждая цифра заменяется на число вхождений этой цифры в число
- итоговое число, возвращаемое функцией, должно быть целым числом, а не строкой.
Разбор примераdigit_count(136116) ➞ 312332Другие примеры
# Цифра 1 появляется трижды, поэтому все единицы заменяются на тройки.
# Цифра 3 появляется только один раз, поэтому тройка заменяется единицей.
# Цифра 6 появляется дважды, поэтому обе шестерки заменяются двойками.
# Возвращается целое число.digit_count(221333) ➞ 221333Решение на нашем сайте.
digit_count(136116) ➞ 312332
digit_count(2) ➞ 1
#задача #coding