Задача для новичков.
Напишите функцию minLength()
, на вход которой подается строка, состоящая только из заглавных латинских букв. Для ее модификации можно применять операцию удаления подстрок 'AB'
или 'BC'
. Функция должна вывести длину минимально возможной строки после применения всех доступных операций.
Примеры работы данной функции:minLength("ABFCACDB") --> 2
Присылайте ваше решения в комментарии к этому посту. Решение - сегодня вечером.
minLength("ACBBD") --> 5
#pythonзадача #coбес
Задача для новичков.
Напишите функцию chunkArray()
, которая принимает на вход спискок элементов и целое число n
. Данная функция должна вернуть тот же список, но разбитый на фрагменты состоящие из n
элементов. Последний элемент списка может содержать меньше элементов, если во входящем списке их недостаточно.
Примеры работы данной функции:chunkArray([1,2,3,4,5], 1) --> [[1], [2], [3], [4], [5]]
Присылайте ваше решения в комментарии к этому посту. Решение - сегодня вечером.
chunkArray([1,9,6,3,2], 6) --> [[1, 9, 6, 3, 2]]
chunkArray([1,9,6,3,2], 3) --> [[1, 9, 6], [3, 2]]
#pythonзадача #coбес
Видео дня. Парсинг динамического сайта на Python + Telegram бот на AIOGram
Обучение веб-парсингу на Python. В данном видео пишем парсер выгодных цен с динамического сайта, с созданием и выгрузкой данных в телеграм-бота, написанного на aiogram. Выполняем задачу с помощью requests, API, aiogram, а также используем запись и чтение из JSON-файлов.
Ссылка на YouTube
#видео
Статья дня. Ключевое слово nonlocal в Python
Когда функция находится внутри другой функции, переменные внешней функции с ее точки зрения не являются ни локальными, ни глобальными. Такие переменные в Python называются нелокальными переменными. Если вам нужно работать с нелокальной переменной в Python, вы должны использовать ключевое слово nonlocal.
Читать статью
#читать
Задача для новичков.
Дополнение к целому числу — это целое число, которое вы получите, если замените все 0
на 1
и все 1
на 0
в его двоичном представлении. Например, целое число 5
— это «101» в двоичном представлени, а его дополнение — «010», то есть целое число 2
.
Напишите функцию findComplement()
, которая принимает на вход целое число, а выводит его дополнение.
Примеры работы данной функции:findComplement(10) --> 5
Присылайте ваше решения в комментарии к этому посту. Решение - сегодня вечером.
findComplement(5) --> 2
#pythonзадача #coбес
Задача для новичков.
У вас есть n
монет, из которых нужно построить лестницу. Лестница состоит из k
рядов, в первом из которых строго одна монета, а в следующих на одну монету больше в каждом последующем. Соответственно, последний ряд может быть неполным. Вот пример такой лестницы:
$Как видите, тут 4-й ряд неполон. Напишите функцию
$ $
$ $ $
$ $ $
arrangeCoins()
, которая принимает на вход целое число n
(количество монет), а выводит количество полных рядов лестницы.arrangeCoins(8) --> 3
arrangeCoins(5) --> 2
Присылайте ваше решения в комментарии к этому посту. Решение - сегодня вечером.Статья дня. Как удалить пробелы из строки в Python
В этой статье представлено 5 различных методов удаления пробелов в строке, основанных на различных сценариях и требованиях. После прочтения вы сможете выбрать наиболее подходящий способ для своего кода.
Читать статью
#читать
Тест. Кортежи в Python
Кортеж — список с фиксированной, не изменяемой длиной. Кортежи в Python имеют много интересных свойств, незнание которых может привести к ошибке в коде. Проверьте, насколько хорошо вы знаете эти свойства: пройдите тест по кортежам из 10 вопросов!
Видео дня. Python ООП: композиция простыми словами
В этом видео мы познакомимся с такой концепцией в ООП языка Python как композиция. Рассмотрим, где и как ее использовать, а также примеры использования.
Ссылка на YouTube
#видео
Ответ к предыдущей задаче для новичков.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]:
#pythonзадача #coбес
return list(set(range(1, len(nums) + 1)) - set(nums))
Ответ к предыдущей задаче для новичков.
def countSegments(s: str) -> int:#pythonзадача #coбес Читать полностью…
return len(s.split())
Подборка каналов с книгами по программированию по языкам:
Python
@pythonbooks - 40.000+ подписчиков.
@pythonbooksru - книги на русском #ru
@pythonknigi
Тестирование(QA)
@libqa
@bookqa
@booksqa
Java
@booksjava - самый большой в телеграме по Java
@javabooksarchive
@booksforjava - #ru
FrontEnd
@frontendbook - самый большой.
@frontbooks - новые книги по JS #ru
Базы Данных
@dbbooks
@databasebooks
Golang
@golangsbook
DataScience
@dsbooksru - #ru
GameDev
@booksgamedev
PHP
@phpbook
По всем языкам
@devtechbooks - #ru
Видео дня. Two-Factor Authentication (2FA) in Python
Разбираем, как реализовать на Python генерацию и верификацию одноразовых паролей для двухфакторной аутентификации.
Ссылка на YouTube
#видео #english
Ответ к предыдущей задаче для новичков.
def lexicalOrder(n: int) -> list[int]:#pythonзадача #coбес Читать полностью…
return [int(i) for i in sorted(str(i) for i in range(1, n + 1))]
Ответ к предыдущей задаче для новичков.
def chunkArray(arr, size):#pythonзадача #coбес Читать полностью…
chunked = []
index = 0
while index < len(arr):
chunked.append(arr[index:index+size])
index += size
return chunked
Тест. Работа со списками в Python
Предлагаем ряд вопросов по спискам для продвинутых питонистов. Попробуйте свои силы!
Ответ к предыдущей задаче для новичков.
def findComplement(num):#pythonзадача #coбес Читать полностью…
mask = 1
while mask < num:
mask = (mask << 1) + 1
return num ^ mask
Ответ к предыдущей задаче для новичков.
def arrangeCoins(n: int) -> int:#pythonзадача #coбес Читать полностью…
counter = 0
m = 0
row = 1
while m <= n:
m += row
row += 1
counter += 1
return counter if counter == row else counter - 1
Уютное сообщество C# разработчиков - обучающий канал для шарпистов.
Контент канала:
🤸 Трюки языка
💻 Вакансии
❓ Тесты на знание языка
📚 Книги
😛 Юмор
Так же у нас есть отдельная ветка для вакансий для C# разработчиков.
Подписывайтесь, изучайте, качайте. @csharp
Python для инженеров: старт потока 28 августа 🐍
Авторы курса Денис Наумов и Антон Рязанцев создали его специально для инженеров по эксплуатации, которые хотят сокращать рутину.
Зачем инженеру учить Python?
⬇ Многие используемые продукты (например, Ансибл) написаны на Пайтоне. Их надо уметь читать и иногда под них писать. Хорошо, когда специалист эксплуатирует продукт и понимает, что он делает и зачем.
⬇ Системы с каждым годом становятся сложнее: инструментов, которых раньше было достаточно, теперь начинает не хватать. Пайтон легко интегрировать почти с любым инструментарием, а с Башем в этом тяжело и больно.
⬇ Девопсам нужно уметь писать стабильный, читаемый и поддерживаемый код. Ведь с помощью программирования можно реализовать не только бизнес логику, но и инфраструктурную логику.
Узнать больше о программе и записаться вы можете на нашем сайте
До встречи!⚡️
Уютное сообщество C# разработчиков - обучающий канал для шарпистов.
Контент канала:
🤸 Трюки языка
💻 Вакансии
❓ Тесты на знание языка
📚 Книги
😛 Юмор
Так же у нас есть отдельная ветка для вакансий для C# разработчиков.
Подписывайтесь, изучайте, качайте. @csharp
Статья дня. List comprehensions и другие comprehensions в Python
В Python вы можете превратить циклы for в однострочники с помощью comprehensions (на русский этот термин часто переводится как “генераторы” или “представления”). В этой статье мы рассмотрим работу каждого вида comprehensions Python, а также плюсы и минусы их использования.
Читать статью
#читать
Задача для новичков.
Напишите функцию findMissedNumbers()
, на вход которой подается список длинной n
, состоящий из целых чисел в диапазоне от 1
до n
. Данная функция должна вернуть список всех чисел, которые отсутствуют во входящем списке, но входят в диапазон от 1
до n
.
Пример работы данной функции:findMissedNumbers([4,3,2,7,8,2,3,1]) --> [5, 6]
Присылайте ваше решения в комментарии к этому посту. Решение - сегодня вечером.
findMissedNumbers([1, 1, 1]) --> [2, 3]
#pythonзадача #coбес
Задача для новичков.
Напишите функцию countSegments()
, которая принимает на вход строку, а возвращает количество сегментов в данной строке. Под сегментами подразумеваются последовательности символов без пробела.
Пример работы данной функции:countSegments('Напишите функцию countSegments()') --> 3
Присылайте ваше решения в комментарии к этому посту. Решение - сегодня вечером.
countSegments('Под сегментами подразумеваются последовательности') --> 4
#pythonзадача #coбес
Тест. Множества (уровень Junior)
Множество в Python — «контейнер», содержащий не повторяющиеся элементы в случайном порядке.
Проверьте, насколько хорошо вы знаете эту тему: пройдите тест по множествам из 10 вопросов!
Статья дня. Ключевое слово yield в Python
Функция, использующая ключевое слово yield, является функцией-генератором. Генераторы полезны, когда вам нужно итерировать значения, не сохраняя их в памяти. В этом руководстве мы разберем работу ключевого слова yield на высоком уровне, без технических подробностей.
Читать статью
#читать
Задача для новичков.
Напишите функцию 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]
#pythonзадача #coбес