channel icon
Полезные материалы по всему, что может быть интересно опытному и начинающему разработчику на Python.

Условия размещения

Цена за 48 часов в ленте 2500,00
Цена за 1 час закрепления N/A
Взаимопиар Нет

Не беру 18+, войну, жесть и т.д.

-3
5 292
подписчиков
-23
~1.3k
охват 1 публикации
0
~4
постов / день
-0,4%
25,0%
ERR % ?

Статистика

Последние публикации

Python'er
25 февраля 2024 г. 18:26
Python'er
25 февраля 2024 г. 7:13
⁉️⁉️ Сортировка вставками: Как это работает (в примерах на Python)


Сортировка вставками - это простой, но эффективный алгоритм сортировки, который обрабатывает входные данные, добавляя каждый новый элемент в отсортированную часть массива.

➡️ Принцип работы

Сортировка вставками работает, сравнивая каждый элемент в массиве с его левым соседом. Если текущий элемент меньше, он перемещается влево. Это происходит до тех пор, пока текущий элемент не окажется больше предыдущего. Этот процесс повторяется для каждого элемента в массиве, пока весь массив не будет отсортирован.

➡️ Пример кода на Python

Вот пример реализации сортировки вставками на Python:

def insertion_sort(arr):
for i in range(1, len(arr)):
key = arr[i]
j = i - 1
while j >=0 and key < arr[j] :
arr[j + 1] = arr[j]
j -= 1
arr[j + 1] = key

arr = [12, 11, 13, 5, 6]
insertion_sort(arr)
print ("Отсортированный массив: ", end ="")
for i in range(len(arr)):
print ("%d" %arr[i], end =" ")


В этом коде мы проходимся по каждому элементу массива, начиная со второго, и сдвигаем его влево, пока не найдем элемент, который меньше текущего.

➡️ Процесс сортировки

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

➡️ Преимущества и недостатки

Преимущество сортировки вставками в том, что она эффективна для небольших массивов и для массивов, которые уже частично отсортированы. Она также стабильна, что означает, что она сохраняет исходный порядок равных элементов. Однако, она не эффективна для больших массивов, так как требует больше операций сравнения и обмена элементов, чем другие алгоритмы сортировки.
Python'er
24 февраля 2024 г. 15:54
*⃣ Как хранить токены и пароли в программах на 🐍🐍 Python?

🔍 У новичков часто возникает вопрос - где хранить секретные данные? Нет, можно, конечно, прямо в коде, но лучше так не делать. Делюсь короткой статьей с основными способами хранения токенов и прочих секретных данных ✨

➖➖➖➖➖➖➖➖➖
➡️ u.habr.com/dSPXvu.habr.com/dSPXv 🔗
➖➖➖➖➖➖➖➖➖
Python'er
24 февраля 2024 г. 9:39
🐍Asyncio

Asyncio - это библиотека в Python, которая предоставляет возможность написания асинхронного кода с использованием сопрограмм (coroutines) и ивент-лупа (event loop). С ее помощью можно создавать эффективные и отзывчивые асинхронные приложения, которые могут обрабатывать множество одновременных задач без блокировки потоков.

Asyncio позволяет выполнять несколько задач параллельно и управлять их выполнением, использовать механизмы ожидания (await) для управления асинхронными операциями, а также упрощает обработку исключений в асинхронном коде.

В примере на фото выше мы создаем две асинхронные задачи с помощью функции async_function, которая задерживается на определенное время и выводит сообщение. Затем мы запускаем обе задачи параллельно в функции main с помощью asyncio.create_task, дожидаемся их выполнения с помощью await и запускаем весь код с помощью asyncio.run(main()). В результате мы увидим вывод сообщений "Hello" через 1 секунду и "Asyncio" через 2 секунды.
Python'er
23 февраля 2024 г. 18:24
 Как использовать функцию range() в Python, кроме как в цикле for i in range для перебора?использовать функцию range() в Python, кроме как в цикле for i in range для перебора?


Функция range() в Python - это важный инструмент для создания последовательности чисел. Хотя она часто используется в связке с циклом for, есть и другие способы, как можно использовать эту функцию.

➡️ Использование range() в списковых включениях

Списковые включения - это мощный инструмент Python, который позволяет создавать списки в одну строку кода. Функция range() может быть использована в списковых включениях для создания списков, которые следуют определенной числовой последовательности. Например, [x for x in range(10)] создаст список чисел от 0 до 9.

➡️ Использование range() в генераторах

Генераторы в Python - это специальный тип итераторов, который позволяет генерировать элементы "на лету", экономя память. Функцию range() можно использовать в генераторах для создания последовательностей чисел. Например, (x for x in range(10)) создаст генератор, который производит числа от 0 до 9.
Python'er
23 февраля 2024 г. 12:17
Разбор

a —> "1" (станет текстовой единицей)

b —> вызовет функцию str, которую мы переопределили выше в коде самостоятельно передав туда 2.
Функция str, в свою очередь, попытается вернуть результат str(number * 2), но мы как раз таки str и переопределили —> она вызовет сама себя.

У нас получится рекурсия, которая будет работать бесконечно, Python выдаст блок-ошибку по глубине рекурсии.

ответ: ошибкаответ: ошибка
Python'er
23 февраля 2024 г. 12:16
Что выдаст код выше?
Опрос
  • 14
  • 22
  • 24
  • 6
  • 4
  • Error
Python'er
23 февраля 2024 г. 12:15
Python'er
23 февраля 2024 г. 10:00
👩‍💻 Как работать с паттернами проектирования в Python?

Расскажет Станислав Ступников — руководитель разработки в VK.

 Встречаемся на бесплатном практическом уроке от OTUS, где мы:

▫️займемся классификацией паттернов;
▫️покажем, насколько хорошо и ровно они транслируются в мир Python-разработки;
▫️ обсудим, как с ними работать. 

📢  Занятие пройдёт 28 февраля в 20:00 мск и будет приурочено к старту курса «Python Developer. Professional». Доступна рассрочка на обучение!

⬇️ Пройдите короткий тест прямо сейчас, чтобы занять место на открытом уроке и получить запись: пройти тест
Python'er
23 февраля 2024 г. 8:32
🟡Matplotlib: Круговые диаграммы

Чтобы добавить список пояснений для каждого сегмента, используй функцию legend().

import matplotlib.pyplot as plt
import numpy as np

y = np.array([35, 25, 25, 15])
mylabels = ["Apples", "Bananas", "Cherries", "Dates"]

plt.pie(y, labels = mylabels)
plt.legend()
plt.show()


Чтобы добавить заголовок к легенде, добавь параметр title в функцию legend.

y = np.array([35, 25, 25, 15])
mylabels = ["Apples", "Bananas", "Cherries", "Dates"]

plt.pie(y, labels = mylabels)
plt.legend(title = "Four Fruits:")
plt.show()


На картинке продемонстрирована легенда с заголовком и списком пояснений.
Python'er
22 февраля 2024 г. 17:44
🔃И последнее из потока постов про Django ORM, Миграции базы данных

💬В Django ORM можно использовать механизм миграций для изменения структуры базы данных без необходимости вручную вносить изменения через SQL запросы. Миграции позволяют вам определять изменения в моделях и применять их к базе данных автоматически.

🤚Для начала работы с миграциями в Django необходимо создать начальное состояние базы данных, которое будет соответствовать текущим моделям вашего приложения. Для этого можно воспользоваться командой python manage.py makemigrations, которая создаст файл миграции в папке migrations вашего приложения.

Затем, чтобы применить миграции к базе данных, можно воспользоваться командой python manage.py migrate, которая применит все необходимые изменения к базе данных. При этом Django будет автоматически отслеживать и применять новые миграции при изменениях в моделях.

💬Миграции в Django ORM могут включать различные операции, такие как создание новых таблиц, добавление и удаление полей, изменение типа данных и многое другое. Кроме того, можно создавать собственные миграции с помощью команды python manage.py makemigrations --empty, чтобы определить свои собственные изменения в базе данных.

👀Использование миграций в Django ORM делает процесс изменения структуры базы данных более удобным и безопасным, позволяя сохранить целостность данных и избежать ошибок при ручном внесении изменений.
Python'er
22 февраля 2024 г. 12:36
Python'er
22 февраля 2024 г. 8:05
🖥Теперь рассмотрим более детально запросы к базе данных

Django ORM позволяет вам взаимодействовать с базой данных с использованием объектно-ориентированного подхода. Запросы к базе данных в Django ORM выполняются с использованием моделей Django, которые представляют таблицы в базе данных.

↔️Примеры различных типов запросов к базе данных в Django ORM:

1. Получение всех объектов из базы данных:
objects = MyModel.objects.all()


2. Получение объекта по определенному условию:
object = MyModel.objects.get(id=1)


3. Фильтрация объектов по определенному условию:
objects = MyModel.objects.filter(name="John")


4. Исключение объектов, удовлетворяющих определенному условию:
objects = MyModel.objects.exclude(name="John")


5. Обновление объектов в базе данных:
MyModel.objects.filter(id=1).update(name="Jane")


6. Создание нового объекта и сохранение его в базе данных:
object = MyModel(name="Jane", age=25)
object.save()


7. Удаление объекта из базы данных:
MyModel.objects.filter(id=1).delete()


👀Django ORM предоставляет гибкие и мощные средства для работы с базой данных, позволяя выполнять различные типы запросов и операций. Он также обеспечивает безопасность и защиту от SQL-инъекций, облегчая работу разработчикам.
Python'er
21 февраля 2024 г. 12:50
💡Рассмотри предыдущий пост более детально, а конкретно создание моделей

⛓Для создания моделей в Django ORM необходимо следовать определенной структуре и использовать специфичные классы и методы. В Django ORM модель представляет собой класс, который отображает таблицу в базе данных.

❗️Для создания модели необходимо создать новый класс в файле models.py вашего приложения. Класс должен наследоваться от класса models.Model. Затем определите поля для этой модели, которые будут представлять столбцы таблицы в базе данных. Каждое поле является экземпляром класса модели (например, models.CharField, models.IntegerField и т. д.).

Пример создания модели в Django ORM:

from django.db import models

class Book(models.Model):
title = models.CharField(max_length=100)
author = models.CharField(max_length=50)
published_date = models.DateField()


🔃После определения модели необходимо сделать миграцию, чтобы применить изменения к базе данных. Для этого выполните команды в терминале:

python manage.py makemigrations
python manage.py migrate


После успешного создания модели можно использовать ее в своем приложении для работы с данными. Например, можно создавать, изменять и удалять записи с помощью методов ORM.

# Пример создания записи
book = Book(title='Harry Potter', author='J.K. Rowling', published_date='1997-06-26')
book.save()

# Пример получения всех записей
all_books = Book.objects.all()

# Пример удаления записи
book.delete()


👀Таким образом, создание моделей в Django ORM представляет собой определение классов, которые отображают таблицы в базе данных, и использование ORM для работы с этими данными.
Python'er
21 февраля 2024 г. 11:00
🔥 Годнота – Чувак запустил сайт, на котором собрано 1000 вопросов с собеседований на Python разработчика. Просчитана вероятность встречи каждого вопроса и есть видео-примеры ответов

👀 Смотри базу вопросов тут
Python'er
21 февраля 2024 г. 9:16
ℹ️ Работа с Django ORM


Django ORM (Object-Relational Mapping) - это мощный инструмент, который позволяет разработчикам взаимодействовать с базой данных с помощью объектов Python. Он предоставляет удобный способ работать с данными, без необходимости писать сложные SQL-запросы.

➡️ Создание моделей

Одним из ключевых аспектов работы с Django ORM является создание моделей. Модель - это класс Python, который определяет структуру таблицы в базе данных. Django ORM автоматически создает таблицу в соответствии с определенной моделью. Модели могут содержать поля, отражающие столбцы таблицы, а также методы и связи с другими моделями. Определение модели в Django ORM очень простое и интуитивно понятное, что делает процесс разработки удобным и эффективным.

Вот пример создания модели в Django ORM:

from django.db import models

class Product(models.Model):
name = models.CharField(max_length=100)
price = models.DecimalField(max_digits=5, decimal_places=2)
description = models.TextField()


➡️ Запросы к базе данных

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

Вот примеры основных команд для выполнения запросов в Django ORM:

# Выборка всех объектов модели
products = Product.objects.all()

# Фильтрация объектов по условию
cheap_products = Product.objects.filter(price__lt=10)

# Сортировка объектов
sorted_products = Product.objects.order_by('-price')

# Агрегирование данных
total_price = Product.objects.aggregate(Sum('price'))


➡️ Миграции базы данных

Еще одно важное преимущество работы с Django ORM - это возможность автоматического создания и применения миграций базы данных. Миграции позволяют легко изменять структуру базы данных, добавлять новые таблицы, поля или изменять существующие. Django ORM автоматически отслеживает изменения в моделях и генерирует миграционные файлы, которые можно применить к базе данных. Это упрощает процесс разработки и поддержки приложения.
Python'er
20 февраля 2024 г. 17:06
🖥Списковое включение (быстрый способ)

Списковое включение — самый эффективный способ итерации любого списка. Это итерирование однострочного списка с включением в него цикла. Посмотрите приведенный ниже пример кода, чтобы понять, как это работает.
Python'er
20 февраля 2024 г. 15:01
🎮 Создание игр с Pygame

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

В статье создадим версию классической игры «Breakout».

Статья
Python'er
20 февраля 2024 г. 10:00
3, 2 … Остановимся здесь. 🐍

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

Не обещаем, что будет легко, но интересно, полезно и недорого (всего 990 рублей!) — гарантируем.

Расклад такой: мы даем вам базу — больше 70 уроков, вебинары, лайвкодинг, а вы пишете собственную программу.

Если переживайте — не переживайте :) Рядом всегда будет наставник, готовый ответить на любой ваш вопрос.

⏰ Старт курса уже 27 февраля, присоединяйтесь!
Python'er
20 февраля 2024 г. 8:34
🐍Усыпляем программу

Иногда возникает необходимость остановить выполнение программы, чтобы можно было выполнить несколько других операций, или просто из-за требуемой утилиты. В такой ситуации может пригодиться функция sleep(), которая обеспечивает точный и гибкий способ остановки потока кода на любой период времени.

В нашем примере время начала и время окончания будут напечатаны с задержкой в 6 секунд.