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

Автор: @energy_it

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

Реклама на бирже: https://telega.in/c/python_ready
加入频道
👩‍💻 Использование Python Generators для оптимизации памяти

Генераторы в Python позволяют возвращать значения по одному за раз, что экономит память при работе с большими наборами данных.

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

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

👉 Python Ready | #гайд
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥56🤝19👍9
This media is not supported in your browser
VIEW IN TELEGRAM
Datacamp — платформа для изучения языка Python и баз данных SQL. На сайте есть много практических заданий, которые можно решать во встроенном редакторе, где есть нейросеть, указывающая на ошибки в коде.

Ссылочка: https://app.datacamp.com/learn/courses

👉 Python Ready | #ресурсы
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19🔥6
👩‍💻 Полезные функции из библиотеки itertools

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

👉 Python Ready | #шпора
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥48👍6🤝5
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