Python академия
7.73K subscribers
2.31K photos
6 videos
268 links
Python академия. Учи Python быстро и легко. По всем вопросам @evgenycarter
Download Telegram
Отправляем электронные письма

SMTP (Simple Mail Transfer Protocol) — это протокол, позволяющий отправлять электронные письма. В стандартной библиотеке есть пакет smtplib, реализующий его поведение.

Для подключения к серверу будем использовать класс SMTP_SSL, который включает в себя и шифрование. В его аргументы передаем адрес сервера и порт. Авторизация происходит с помощью метода login, в который передаем соответственно логин и пароль.

Отправлять письма можно одноименным методом sendmail, который принимает адреса отправителя и получается, а также сам текст. В конце программы следует закрывать соединение с помощью метода quit().

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

Подписывайтесь на канал 👉@pythonofff
1
Обзор простых декораторов в Python

Прежде чем мы углубимся в новую территорию, давайте рассмотрим, как работают простые декораторы из первого урока. Ниже представлен пример, введенный нами в оболочку IDLE Python. Попробуйте поэкспериментировать, запустите IDLE оболочку и введите код сами.

Подписывайтесь на канал 👉@pythonofff
👍1
Бесконечность

Вообще float является крайне интересным типом данных и не перестает удивлять своими особенностями. Про значение Not a Number мы уже писали, а вот сегодня поговорим про infinity.

Строковые литералы 'inf' и 'infinity' можно конвертировать в float, и в результате получается значение бесконечности. Для отрицательной "бесконечности" нужно поставить знак минуса перед словом.

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

Подписывайтесь на канал 👉@pythonofff
👍2
Получаем данные о системе

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

Если говорить про практические применение, psutil полезен в основном для мониторинга системы, ограничения ресурсов процессов и управления запущенными процессами.

Помимо привычных Windows, MacOS и Linux, библиотека также поддерживает системы FreeBSD, OpenBSD, NetBSD, Sun Solaris и AIX.

Подписывайтесь на канал 👉@pythonofff
👍2
Please open Telegram to view this post
VIEW IN TELEGRAM
Как отслеживать url в формах на django?

Чтобы отслеживать URL в формах Django, вы можете использовать метод get_absolute_url() в моделе и функцию reverse() для построения URL.

В моделе добавьте метод get_absolute_url() для создания URL объекта. Например:
from django.urls import reverse

class YourModel(models.Model):
# поля модели

def get_absolute_url(self):
return reverse('your-view-name', args=[str(self.id)])


Создайте HTML-шаблон для формы, в которой вы можете использовать action для указания URL, куда будет отправляться данные формы. Например:
<form action="{{ object.get_absolute_url }}" method="post">
<!-- поля формы -->
<button type="submit">Submit</button>
</form>


В файле urls.py определите путь к вашему представлению. Укажите имя представления, чтобы использовать его в методе get_absolute_url() вашей модели.
from django.urls import path
from . import views

urlpatterns = [
path('your-url/<int:pk>/', views.YourView.as_view(), name='your-view-name'),
]

В представлении (views.py) реализуйте обработку формы. Например:
from django.views.generic.edit import CreateView
from .models import YourModel

class YourView(CreateView):
model = YourModel
fields = '__all__'


Теперь, когда вы отправляете форму, она будет отправляться на конкретный URL, который вы определили в методе get_absolute_url() вашей модели.


Подписывайтесь на канал 👉@pythonofff
👍1