PythonBoost - сообщество питонистов
12.4K subscribers
292 photos
6 videos
542 links
Лучший Python телеграм канал для новичков.

Цель: подготовка студентов, начинающих питонистов к нахождению первой работы.

@anothertechrock

РКН: https://kurl.ru/Jhcwp
加入频道
Статья дня. Ключевое слово nonlocal в Python

Когда функция находится внутри другой функции, переменные внешней функции с ее точки зрения не являются ни локальными, ни глобальными. Такие переменные в Python называются нелокальными переменными. Если вам нужно работать с нелокальной переменной в Python, вы должны использовать ключевое слово nonlocal.

Читать статью

#читать
Видео дня. Парсинг динамического сайта на Python + Telegram бот на AIOGram

Обучение веб-парсингу на Python. В данном видео пишем парсер выгодных цен с динамического сайта, с созданием и выгрузкой данных в телеграм-бота, написанного на aiogram. Выполняем задачу с помощью requests, API, aiogram, а также используем запись и чтение из JSON-файлов.

Ссылка на YouTube

#видео
Тест. Работа со списками в Python

Предлагаем ряд вопросов по спискам для продвинутых питонистов. Попробуйте свои силы!
Задача для новичков.

Напишите функцию 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бес
Ответ к предыдущей задаче для новичков.

def chunkArray(arr, size):
chunked = []
index = 0
while index < len(arr):
chunked.append(arr[index:index+size])
index += size
return chunked

#pythonзадача #coбес
Задача для новичков.

Напишите функцию minLength(), на вход которой подается строка, состоящая только из заглавных латинских букв. Для ее модификации можно применять операцию удаления подстрок 'AB' или 'BC'. Функция должна вывести длину минимально возможной строки после применения всех доступных операций.

Примеры работы данной функции:

minLength("ABFCACDB") --> 2
minLength("ACBBD") --> 5

Присылайте ваше решения в комментарии к этому посту. Решение - сегодня вечером.

#pythonзадача #coбес
Ответ к предыдущей задаче для новичков.

import re

def minLength(s: str) -> int:
match = re.search('AB|CD', s)
while match:
s = re.sub(r'AB|CD', '', s)
match = re.search('AB|CD', s)
return len(s)

#pythonзадача #coбес
Статья дня. Как удалить папку в Python

Рассмотрели разные способы удаления непустых папок при помощи Python.

Читать статью

#читать
Тест. Методы в Python

Методы, наверное, самая важная часть в современных языках программирования. И Python — не исключение. Они используются везде и при этом выглядят по-разному. Проверьте, насколько хорошо вы в них разбираетесь: пройдите тест из 10 вопросов!
Статья дня. Как разделить список на несколько равных частей

В этой статье мы подробно рассмотрим несколько подходов к разделению списка на части. Но учтите, что идея не в том, чтобы использовать существующее решение, а в том, чтобы реализовать логику самостоятельно.

Читать статью

#читать
Задача для новичков.

Напишите функцию makePalindrome(), на вход которой подается строка состоящая из строчных английских букв. Эта функция должна вывести палиндром, построенный с минимальным количеством замен букв. Если таких палиндромов можно создать несколько, вывести необходимо минимальный в лексикографическом смысле. Напомним, что палиндромом называется строка, которая одинаково читается в обоих направлениях.

Примеры работы данной функции:

makePalindrome("egcfe") --> 'efcfe'
makePalindrome("seven") --> 'neven'

Присылайте ваше решения в комментарии к этому посту. Решение - сегодня вечером.

#pythonзадача #coбес
Ответ к предыдущей задаче для новичков.

def makePalindrome(s):
s = list(s)
n = len(s)
for i in range(n // 2):
j = n - i - 1
if s[i] != s[j]:
s[i] = s[j] = min(s[i], s[j])
return ''.join(s)

#pythonзадача #coбес
Задача для новичков.

Напишите функцию averageValue(), которая принимает на вход список целых неотрицательных чисел. Эта функция должна вернуть среднее значение четных чисел из данного списка, которые ещё при этом делятся на 3. Это значение должно быть округлено вниз до ближайшего целого значения. Если в списке нет значений, которые бы удовлетворяли этим условиям, функция должна вернуть 0.

Примеры работы данной функции:

averageValue([1,3,6,10,12,15]) --> 9
averageValue([1,2,4,7,10]) --> 0

Присылайте ваше решения в комментарии к этому посту. Решение - сегодня вечером.

#pythonзадача #coбес