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

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

@anothertechrock

РКН: https://kurl.ru/Jhcwp
加入频道
Статья дня. Поиск текста в нескольких файлах на Python

В этой статье мы будем искать текст или строку в нескольких файлах. План действий следующий: определяем директорию, в которой нужно искать, получаем список всех файлов в этой директории (в том числе во вложенных папках), а затем открываем каждый файл и ищем в нем нужный текст.

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

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

Напишите функцию canConstruct(), которая принимает две строки, s и t. Данная функция должна возвращать True, если первую строку s можно составить из букв, которые входят во вторую строку t. Причем каждую букву из строки t можно использовать только один раз.

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

canConstruct("aa", "ab") --> False
canConstruct("aa", "aab") --> True

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

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

from collections import Counter

def canConstruct(s, t):
char_count_s = Counter(s)
char_count_t = Counter(t)

for char, count in char_count_s.items():
if count > char_count_t[char]:
return False

return True

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

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

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

def lexicalOrder(n: int) -> list[int]:
return [int(i) for i in sorted(str(i) for i in range(1, n + 1))]

#pythonзадача #coбес
Статья дня. Ключевое слово yield в Python

Функция, использующая ключевое слово yield, является функцией-генератором. Генераторы полезны, когда вам нужно итерировать значения, не сохраняя их в памяти. В этом руководстве мы разберем работу ключевого слова yield на высоком уровне, без технических подробностей.

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

#читать
Тест. Множества (уровень Junior)

Множество в Python — «контейнер», содержащий не повторяющиеся элементы в случайном порядке.

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

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

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

countSegments('Напишите функцию countSegments()') --> 3
countSegments('Под сегментами подразумеваются последовательности') --> 4

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

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

def countSegments(s: str) -> int:
return len(s.split())

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

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

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]:
return list(set(range(1, len(nums) + 1)) - set(nums))

#pythonзадача #coбес
Статья дня. List comprehensions и другие comprehensions в Python

В Python вы можете превратить циклы for в однострочники с помощью comprehensions (на русский этот термин часто переводится как “генераторы” или “представления”). В этой статье мы рассмотрим работу каждого вида comprehensions Python, а также плюсы и минусы их использования.

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

#читать
Каким будет вывод этого кода?
Anonymous Quiz
62%
10
27%
100
3%
110
4%
None
3%
Посмотреть ответ
Видео дня. Python ООП: композиция простыми словами

В этом видео мы познакомимся с такой концепцией в ООП языка Python как композиция. Рассмотрим, где и как ее использовать, а также примеры использования.

Ссылка на YouTube

#видео
Уютное сообщество C# разработчиков - обучающий канал для шарпистов.

Контент канала:
🤸 Трюки языка
💻 Вакансии
Тесты на знание языка
📚 Книги
😛 Юмор

Так же у нас есть отдельная ветка для вакансий для C# разработчиков.

Подписывайтесь, изучайте, качайте. @csharp