Python Ready | Программирование
22.9K subscribers
772 photos
53 videos
393 links
Авторский канал по разработке на Python.
Ресурсы, гайды, задачи, шпаргалки.
Информация ежедневно пополняется!

Автор: @energy_it

РКН: https://clck.ru/3NJEEh

Реклама на бирже: https://telega.in/c/python_ready
加入频道
Please open Telegram to view this post
VIEW IN TELEGRAM
😁97👍19🤝10🔥2
👩‍💻 Декоратор property

@property используется для превращения метода класса в свойство, которое можно вызывать без скобок. Это позволяет обращаться к методам класса, как к атрибутам, что делает код более читабельным и интуитивно понятным.

Он особенно полезен, когда вам нужно контролировать доступ к атрибутам объекта или выполнять вычисления при получении значения, но при этом не хотите изменять синтаксис вызова.


🔥 — если узнал новое
🤝 если уже пользовался

👉 Python Ready | #декоратор
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥53🤝8👍6
👩‍💻 Магические методы в Python

Суть:
Магические методы делают ваши пользовательские классы в Python мощными и гибкими, позволяя им перегружать стандартные операции и вести себя как базовые типы данных.

1. Определение класса с __init__ и __repr__
Магические методы init и repr помогают задавать значения свойств объекта при его создании и форматируют вывод.
class Point:
def __init__(self, x, y):
self.x = x
self.y = y

def __repr__(self):
return f"Point({self.x}, {self.y})"


2. Перегрузка оператора сложения с помощью __add__
С помощью метода add вы можете определить, как экземпляры класса будут складываться.
def __add__(self, other):
return Point(self.x + other.x, self.y + other.y)


Теперь вы можете складывать два объекта Point:
Point(2, 3) + Point(1, 2)  # вернет Point(3, 5)


3. Поддержка функций len() и str()
Метод len позволяет использовать функцию len() на вашем объекте, а str дает строковое представление объекта.
class Text:
def __init__(self, content):
self.content = content

def __len__(self):
return len(self.content)

def __str__(self):
return f"'{self.content}' with length {len(self.content)}"


👉 Python Ready | #техсобес
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥28👍13🤝3
📖 Алгоритмы на практике

Руководство по эффективному применению алгоритмов для решения реальных задач, с акцентом на практические примеры и оптимизацию кода.

Год: 2023
Автор: Зингаро Даниэль


⬇️ Cкачать книгу

👉 Python Ready | #книга
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥17👍6🤝3
👩‍💻 Shallow Copy vs. Deep Copy в Python — выбираем правильный способ копирования!

Когда речь заходит о копировании объектов в Python, важно понимать разницу между shallow и deep copy.

Shallow copy создает только поверхностную копию, что означает, что вложенные объекты остаются связанными с оригиналом, тогда как deep copy создает независимую копию всего объекта, включая вложенные структуры.

🔥 — если узнал новое
🤝 если уже пользовался

👉 Python Ready | #собес
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥27🤝13👍5
This media is not supported in your browser
VIEW IN TELEGRAM
Rio — это простой в использовании фреймворк для создания веб-сайтов и приложений, полностью основанный на Python. Вам не понадобится ни строчки HTML, CSS или JavaScript, чтобы создать красивые и современные приложения.

Ссылочка: https://rio.dev/

👉 Python Ready | #ресурсы
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥20👍10
👩‍💻 Методы для работы со словарём

Эта шпаргалка содержит основные методы работы со словарями в Python, которые упрощают манипуляции с данными, позволяя легко добавлять, изменять и извлекать значения по ключам.

👉 Python Ready | #шпора
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍45🔥27🤝9
🖥 Прикрой свой з** инструкциями assert

Сегодня мы рассмотрим использование assert и чего нужно предостерегаться. По сути данная инструкция представляет из себя что-то типа средства отладки, которое проверяет условие, если условие истинно, то программа работает дальше, если ложно, то вызывается исключение AssertionError с необязательным исключением

Простой пример использования assert:
def apply_discount(product, discount):
price = int(product['цена'] * (1.0 — discount))
assert 0 <= price <= product['цена']
return price


Здесь инструкция нам гарантирует, что новая цена не будет отрицательной и не будет выше прежней, можем в этом убедиться:
shoes = {'name': 'Snicker', 'price': 14900}
apply_discount(shoes, 0.25)

11175


Если мы применим 200% скидку, то сработает исключение:
apply_discount(shoes, 2.0)
Traceback (most recent call last):
File "<input>", line 1, in <module>
apply_discount(prod, 2.0)
File "<input>", line 4, in apply_discount
assert 0 <= price <= product['price']
AssertionError


Ловушка проверки валидности:
Так почему нам просто не проверять все инструкцией assert и забить болт на другие методы проверки?

Давайте рассмотрим следующий пример:
def delete_product(prod_id, user):
assert user.is_admin(), 'здесь должен быть админ'
assert store.has_product(prod_id), 'неизвестный товар'
store.get_product(prod_id).delete()


С первого взгляда все понятно, assert проверяет истинность условий и в случае ложного результата вызывает исключение, НО, утверждения в Python могут быть глобально отключены, это значит, что наши инструкции будут превращены в нулевые операции

Нулевая операция (null-operation) - операция, которая не возвращает данных и оставляет состояние программы без изменений.


К чему может привести обнуление операций? Как написано выше, инструкция просто не вернет вам ответ, за счет чего интерпретатор просто пройдет "мимо" вашей инструкции и в данном случае любой пользователь получит права админа

Жми 🔥 если понравился пост

👉 Python Ready | #практика
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥38👍4👎2
This media is not supported in your browser
VIEW IN TELEGRAM
Cursor AI — нейросеть для разработки, представляющая собой интеллектуальный редактор кода, который помогает за счет подсказок, автоматизации и интеграции с расширениями VS Code.

📌 Ссылочка: https://www.cursor.com/

👉 Python Ready | #ресурс
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21🔥10
🖥 Управление ресурсами с помощью контекстных менеджеров

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

1. Стандартный пример с with
: позволяет безопасно открыть и закрыть файл, даже если в блоке возникнет ошибка:
with open('file.txt', 'r') as file:
data = file.read()


2. Создание своего контекстного менеджера: определив enter и exit методы. Это полезно, например, для измерения времени выполнения:
class Timer:
def __enter__(self):
self.start = time.time()
def __exit__(self, exc_type, exc_value, traceback):
print(f"Время выполнения: {time.time() - self.start:.4f} сек")


3. Использование contextmanager: модуль contextlib позволяет создавать контекстные менеджеры проще, например, для работы с файлами:
@contextmanager
def open_file(path, mode):
file = open(path, mode)
try:
yield file
finally:
file.close()


👉 Python Ready | #техсобес
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19🔥7
📖 Python для сложных задач

Подробное руководство по самым разным вычислительным и статистическим методам, без которых немыслима любая интенсивная обработка данных, научные исследования и передовые разработки

Автор: Дж. Вандер Плас
Год: 2018


⬇️ Скачать книгу

👉 Python Ready | #книга
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥4
😎 Статья, в которой вы узнаете, как взламывать игры с помощью Python.

В этой статье:
• Вы познакомитесь с библиотекой Pymem, которая управляет памятью Windows а так же узнаете, как с её помощью взломать игру.

🔊Если понравилось, можешь продолжить читать на Habr!


👉 Python Ready | #статья
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🔥6
🔥65😁22👍13🤝2
🖥 Обработка JSON

Мы рассмотрели основные способы работы с JSON, что позволяет эффективно взаимодействовать с данными:

• Загрузка JSON из файла
• Преобразование объекта Python в JSON
• Запись JSON в файл


Эти методы важны для работы с внешними API и обмена данными.

🔥 — если узнал новое
🤝 — если уже пользовался


👉 Python Ready | #гайд
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥37👍29🤝16