Статья показывает, как создавать кастомные токенизаторы в SpaCy для специфических задач: от разбивки текста по уникальным правилам до обработки экзотических языков программирования. Практические примеры включены.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
🕵️♂️ Когда твоя работа зависит от Василия
Задача вроде простая, но всё стопорится, потому что «это знает только Василий, он тут со времён динозавров». Никакой документации, только магия в его голове. В итоге — пока он не ответит, ты зависаешь, а проект буксует. Звучит знакомо?
⚙️ Если так, пора разорвать этот порочный круг. Вместо бесконечных вопросов начни собирать всё в одну базу знаний — хоть в Notion, хоть на салфетках. Предложи команде попробовать парное программирование: пока Василий творит чудеса, ты уже разбираешься, как эти фокусы повторить.
Задача вроде простая, но всё стопорится, потому что «это знает только Василий, он тут со времён динозавров». Никакой документации, только магия в его голове. В итоге — пока он не ответит, ты зависаешь, а проект буксует. Звучит знакомо?
Please open Telegram to view this post
VIEW IN TELEGRAM
Статья делится 7 продвинутыми приёмами работы с pandas для оптимизации задач анализа данных. Рассматриваются, например, итерации по группам с df.groupby().iter() и другие способы упростить повторяющиеся операции.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Генераторы — это функции в Python, которые возвращают значения по одному с помощью ключевого слова
yield
, вместо полного возврата всех значений сразу. Они полезны для работы с большими объемами данных, так как сохраняют память, генерируя значения на лету.# Генератор для получения первых N чисел Фибоначчи
def fibonacci(n):
a, b = 0, 1
for _ in range(n):
yield a
a, b = b, a + b
# Используем генератор
for num in fibonacci(5):
print(num)
# Вывод: 0, 1, 1, 2, 3
🗣️ В этом примере генератор fibonacci вычисляет числа по запросу, вместо сохранения всех значений в памяти. Это делает генераторы особенно удобными для работы с потоками данных или бесконечными последовательностями.
Please open Telegram to view this post
VIEW IN TELEGRAM
В этой статье я постараюсь простым языком рассказать о последствиях, к которым может привести слепой запуск A/B-тестов без предварительного А/А-тестирования.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Напишите функцию, которая принимает строку и возвращает новую строку, в которой слова идут в обратном порядке. Слова разделены пробелами.
print(reverse_words("Hello World")) # Ожидаемый результат: "World Hello"
print(reverse_words("Python is great")) # Ожидаемый результат: "great is Python"
Решение задачи
def reverse_words(sentence):
return ' '.join(sentence.split()[::-1])
# Пример использования:
print(reverse_words("Hello World")) # Ожидаемый результат: "World Hello"
print(reverse_words("Python is great")) # Ожидаемый результат: "great is Python"
Please open Telegram to view this post
VIEW IN TELEGRAM
Метаклассы в Python — это классы, которые определяют поведение других классов. Они позволяют изменять или расширять логику создания классов, добавляя к ним атрибуты или методы. Метаклассы чаще всего используются для создания сложных API или DSL (языков предметной области).
# Определение метакласса
class MyMeta(type):
def __new__(cls, name, bases, dct):
dct['custom_method'] = lambda self: f"Метод добавлен через {cls.__name__}"
return super().__new__(cls, name, bases, dct)
# Используем метакласс для создания класса
class MyClass(metaclass=MyMeta):
pass
# Пример использования
obj = MyClass()
print(obj.custom_method()) # Метод добавлен через MyMeta
🗣️ В этом примере метакласс MyMeta добавляет метод custom_method ко всем классам, которые его используют. Метаклассы дают мощный инструмент для динамического создания и модификации классов.
Please open Telegram to view this post
VIEW IN TELEGRAM
Эта статья написана для новичков, которые только начинают осваивать структуры данных на Python. Сегодня мы рассмотрим замечательную и очень полезную структуру — двусвязный список.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Код, который пишется за час, но читается три дня — это не экономия времени.
Please open Telegram to view this post
VIEW IN TELEGRAM
Наша сегодняшняя цель - подробно разобраться в процессе создания REST API с использованием Django и Django REST Framework, разбираясь в каждом шаге и его значение. Мы также рассмотрим, почему создание API важно и как это может быть полезно в ваших будущих проектах.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Хотите освоить программирование на Python, но не знаете с чего начать? Мы подготовили для вас подборку из 10 лучших книг, которые помогут быстро и эффективно изучить этот популярный язык.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Напишите скрипт, который принимает два текстовых файла и выводит строки, которые отличаются между ними.
python compare_files.py file1.txt file2.txt
Различия:
file1.txt: Python is amazing.
file2.txt: Python is great.
file1.txt: This is file one.
file2.txt: This is file two.
Решение задачи
def compare_files(file1_path, file2_path):
try:
with open(file1_path, 'r', encoding='utf-8') as file1, open(file2_path, 'r', encoding='utf-8') as file2:
file1_lines = file1.readlines()
file2_lines = file2.readlines()
max_lines = max(len(file1_lines), len(file2_lines))
print("Различия:")
for i in range(max_lines):
line1 = file1_lines[i].strip() if i < len(file1_lines) else "<пусто>"
line2 = file2_lines[i].strip() if i < len(file2_lines) else "<пусто>"
if line1 != line2:
print(f"file1.txt: {line1}")
print(f"file2.txt: {line2}")
except FileNotFoundError as e:
print(f"Ошибка: {e}")
except Exception as e:
print(f"Ошибка: {e}")
# Пример использования:
if __name__ == "__main__":
import sys
if len(sys.argv) < 3:
print("Использование: python compare_files.py <file1> <file2>")
else:
compare_files(sys.argv[1], sys.argv[2])
Please open Telegram to view this post
VIEW IN TELEGRAM