summaryrefslogtreecommitdiff
path: root/PYTHON/Библиотеки для ленивых.md
diff options
context:
space:
mode:
Diffstat (limited to 'PYTHON/Библиотеки для ленивых.md')
-rw-r--r--PYTHON/Библиотеки для ленивых.md83
1 files changed, 83 insertions, 0 deletions
diff --git a/PYTHON/Библиотеки для ленивых.md b/PYTHON/Библиотеки для ленивых.md
new file mode 100644
index 0000000..66f7096
--- /dev/null
+++ b/PYTHON/Библиотеки для ленивых.md
@@ -0,0 +1,83 @@
+👩‍💻 когда хочется больше делать с меньшими усилиями
+
+Каждый программист знает: кодить можно быстрее, если использовать проверенные решения. В Python куча библиотек, которые делают работу за тебя — не нужно изобретать велосипед.
+
+ 1. **`pathlib` — путь к лёгкости работы с путями**
+
+Ты всё ещё юзаешь os.path? Пора остановиться. pathlib — это объектно-ориентированная альтернатива, которая позволяет работать с путями проще и чище.
+
+```python
+from pathlib import Path
+
+p = Path("/home/user/docs")
+print(p / "file.txt")  # /home/user/docs/file.txt
+```
+
+👉 Это значительно читаемее и проще, чем старые подходы с os.path.
+
+ 2. **`requests` — HTTP без головной боли**
+
+HTTP-запросы — одна из самых часто используемых операций, но с ними можно запутаться. requests делает этот процесс понятным и удобным.
+
+```python
+import requests
+
+response = requests.get('https://api.example.com/data')
+print(response.json())
+```
+
+👉 Всё! Нет лишнего кода, никаких ненужных сложностей.
+
+ 3. **`pydantic` — валидация данных с минимальными усилиями**
+
+Если тебе нужно проверять данные, а писать вручную кучу кода — не хочется, используй pydantic. Эта библиотека позволяет быстро проверять и валидировать данные, обрабатывая JSON, параметры и модели.
+
+```python
+from pydantic import BaseModel
+
+class User(BaseModel):
+    name: str
+    age: int
+
+user = User(name="Alice", age=30)
+print(user)
+```
+
+👉 Валидация без лишних усилий и работы с типами. Всё автоматически.
+
+ 4. **`attrs` — создание классов без ненужного кода**
+ 5.
+Если ты создаёшь классы, но не хочешь писать лишние методы вроде __init__, __repr__, __eq__, то тебе в помощь attrs. Эта библиотека позволяет легко создавать классы с автоматическим заполнением всех необходимых методов.
+
+```python
+import attr
+
+@attr.s
+class Point:
+    x = attr.ib()
+    y = attr.ib()
+
+p = Point(3, 4)
+print(p)  # Point(x=3, y=4)
+```
+
+👉 Быстро, удобно, без лишних усилий.
+
+ 5. **`click` — консольные приложения без мук**
+
+Создание CLI-интерфейсов может быть утомительным, но с click это делается быстро и без боли. Ты можешь создавать простые и мощные консольные команды с минимальными усилиями.
+
+```python
+import click
+
+@click.command()
+@click.argument('name')
+def greet(name):
+    click.echo(f"Hello, {name}!")
+
+greet()
+```
+
+👉 Лёгкая настройка, удобная обработка аргументов и флагов.
+
+🗣️ **Запомни**: используй библиотеки, чтобы минимизировать шаблонный код, повысить читаемость и улучшить производительность разработки. \ No newline at end of file