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

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

@anothertechrock

РКН: https://kurl.ru/Jhcwp
加入频道
Статья дня. Как скачать видео с YouTube при помощи Python

YouTube позволяет сохранять видео в папке загрузок для просмотра в автономном режиме. Тем не менее, вы не можете сохранять их локально.

Из этого руководства вы узнаете, как написать код на Python для загрузки видео с YouTube. Вероятно, вам известно, что одним из достоинств Python является огромное количество модулей и библиотек. Мы напишем скрипт, используя популярный пакет pytube.

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

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

Напишите функцию remove_element(), которая принимает два аргумента: целочисленный массив nums и целое число val. Данная функция должна вернуть массив, из которого удалены все элементы равные val и количество элементов в этом массиве.

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

remove_element([3, 2, 2, 3], 3) --> ([2, 2], 2)
remove_element([3, 2, 5, 5, 2, 3, 5, 1, 6], 5) --> ([3, 2, 2, 3, 1, 6], 6)

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

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

def remove_element(nums, val):
k = 0
for i in range(len(nums)):
if nums[i] != val:
nums[k] = nums[i]
k += 1
nums = nums[:k]
return nums, k

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

Есть лестница, состоящая из n ступенек. Вы можете за один шаг подниматься на 1 или на 2 ступеньки. Напишите функцию climbStairs(), которая бы подсчитывала количество всех возможных вариантов подняться на эту лестницу.

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

climbStairs(5) —> 8
climbStairs(8) —> 34
climbStairs(35) —> 14930352

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

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

def climbStairs(n: int) -> int:
if n <= 2:
return n

dp = [0] * (n + 1)
dp[1] = 1
dp[2] = 2

for i in range(3, n + 1):
dp[i] = dp[i - 1] + dp[i - 2]

return dp[n]

Подумайте также как можно решить эту задачу, если существует возможность еще подниматься сразу на 3 ступеньки.

#pythonзадача #coбес
Видео дня. Делаем безопасную перезапись файла с помощью менеджера контекста

Контекстные менеджеры - очень полезная штука в Python. Давайте разберем использование context manager на примере atomic write. Т.е., если в процессе записи информации в файл произойдет ошибка, мы должны откатиться к предыдущей версии файла.

Ссылка на YouTube

#видео
Тест. Работа с числовыми выражениями в Python

Работа с числовыми выражениями — ежедневная рутина разработчика. Они постоянно используются в вычислениях, переменных, функциях, методах и условиях. Тема, в общем-то, простая, но в ней довольно легко запутаться и допустить ошибку.

Проверьте, насколько хорошо вы разбираетесь в числовых выражениях: пройдите тест из 10 вопросов!
Задача для новичков.

Напишите функцию 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

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

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

def containsNearbyDuplicate(nums: list[int], k: int) -> bool:
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

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

Напишите функцию addDigits(), которая принимает на вход целое число. На выходе она должна вернуть сумму всех цифр числа, причем ответ должен состоять только из одной цифры. Например, addDigits(38) --> 3 + 8 = 11 (число состоит из двух цифр, значит складывает дальше) --> 1 + 1 = 2. Таким образом, результат работы функции равен 2.

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

addDigits(355) --> 4
addDigits(2499) --> 6
addDigits(597) --> 3

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

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

def addDigits(num: int) -> int:
if len(str(num)) == 1:
return num
else:
return addDigits(sum(list(int(i) for i in str(num))))

Подучайте также, как можно решить данную задачу без использования рекурсии.

#pythonзадача #coбес
Каким будет вывод в консоли следующего кода?
>>>list("a#b#c#d".split('#'))
Anonymous Quiz
70%
['a', 'b', 'c', 'd']
9%
['a b c d']
8%
['a#b#c#d']
9%
['abcd']
4%
Посмотреть ответ
Тест. Итераторы в Python (уровень Junior)

Итераторы — самая простая форма итерируемых объектов в Python. Любой итерируемый объект реализует протокол итератора.

Проверьте, насколько хорошо вы знаете эту тему: пройдите тест из 10 вопросов!
Статья дня. Как создать Telegram-бота с помощью Python

Автоматизированные чат-боты весьма полезны для стимулирования взаимодействия. Мы можем создавать таких ботов для Slack, Discord и других платформ. В этой статье я расскажу вам, как создать Telegram-бота, который расскажет вам ваш гороскоп. Итак, давайте приступим!

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

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

Напишите функцию isPowerOfThree(), которая принимает на вход целое число. Она должна возвращать True, если число является степенью тройки и False в противном случае.

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

isPowerOfThree(27) --> True
isPowerOfThree(-1) --> False
isPowerOfThree(20) --> False

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

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

def isPowerOfThree(n: int) -> bool:
if n <= 0:
return False
while n % 3 == 0:
n //= 3
return n == 1

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

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

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

intersection([4,9,5], [9,4,9,8,4]) --> [9, 4]
intersection([1,2,2,1], [2,2]) --> [2]

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

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

def intersection(nums1, nums2) :
return list(set(nums1) & set(nums2))

#pythonзадача #coбес
Плейлист дня. Создание мини-блога на Django 4

Семь уроков по практическому использованию фреймворка Django.

#видео #django #english

Смотреть на YouTube