About Python [ru]
6.32K subscribers
314 photos
1 video
1.64K links
Все о Python: алгоритмы, паттерны проектирования, задачи, нейронные сети

Канал на бирже - https://telega.in/c/python_tesst

По вопросам рекламы или разработки: @g_abashkin
Download Telegram
⚙️ Что такое метаклассы в Python и как они работают?

Метаклассы в 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: простой инструмент для сложных задач

Эта статья написана для новичков, которые только начинают осваивать структуры данных на Python. Сегодня мы рассмотрим замечательную и очень полезную структуру — двусвязный список.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
📐 Удобство кода важнее скорости написания

Код, который пишется за час, но читается три дня — это не экономия времени.

👉 Совет: всегда думай о том, сколько времени займёт чтение и поддержка твоего кода. Быстрое написание ценится только один раз. Удобное чтение ценится бесконечно.
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Создание RESTful API с помощью Django и Django REST Framework

Наша сегодняшняя цель - подробно разобраться в процессе создания REST API с использованием Django и Django REST Framework, разбираясь в каждом шаге и его значение. Мы также рассмотрим, почему создание API важно и как это может быть полезно в ваших будущих проектах.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 ТОП-10 книг по Python для начинающих программистов в 2024 году

Хотите освоить программирование на Python, но не знаете с чего начать? Мы подготовили для вас подборку из 10 лучших книг, которые помогут быстро и эффективно изучить этот популярный язык.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Задачка по Python

Напишите скрипт, который принимает два текстовых файла и выводит строки, которые отличаются между ними.

➡️ Пример:

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