Обзор простых декораторов в Python
Прежде чем мы углубимся в новую территорию, давайте рассмотрим, как работают простые декораторы из первого урока. Ниже представлен пример, введенный нами в оболочку IDLE Python. Попробуйте поэкспериментировать, запустите IDLE оболочку и введите код сами.
Подписывайтесь на канал 👉@pythonofff
Прежде чем мы углубимся в новую территорию, давайте рассмотрим, как работают простые декораторы из первого урока. Ниже представлен пример, введенный нами в оболочку IDLE Python. Попробуйте поэкспериментировать, запустите IDLE оболочку и введите код сами.
Подписывайтесь на канал 👉@pythonofff
👍1
Бесконечность
Вообще float является крайне интересным типом данных и не перестает удивлять своими особенностями. Про значение Not a Number мы уже писали, а вот сегодня поговорим про infinity.
Строковые литералы 'inf' и 'infinity' можно конвертировать в float, и в результате получается значение бесконечности. Для отрицательной "бесконечности" нужно поставить знак минуса перед словом.
Такой прием может быть полезен в коде, где требуется хранить в переменной самое большое или самое маленькое числовое значение для дальнейшего сравнения.
Подписывайтесь на канал 👉@pythonofff
Вообще float является крайне интересным типом данных и не перестает удивлять своими особенностями. Про значение Not a Number мы уже писали, а вот сегодня поговорим про infinity.
Строковые литералы 'inf' и 'infinity' можно конвертировать в float, и в результате получается значение бесконечности. Для отрицательной "бесконечности" нужно поставить знак минуса перед словом.
Такой прием может быть полезен в коде, где требуется хранить в переменной самое большое или самое маленькое числовое значение для дальнейшего сравнения.
Подписывайтесь на канал 👉@pythonofff
👍2
Получаем данные о системе
Кроссплатформенная библиотека psutil позволяет получать информацию о процессоре, памяти, диске, сети, датчиках и запущенных процессах в системе. Примеры базового использования показаны на картинке.
Если говорить про практические применение, psutil полезен в основном для мониторинга системы, ограничения ресурсов процессов и управления запущенными процессами.
Помимо привычных Windows, MacOS и Linux, библиотека также поддерживает системы FreeBSD, OpenBSD, NetBSD, Sun Solaris и AIX.
Подписывайтесь на канал 👉@pythonofff
Кроссплатформенная библиотека psutil позволяет получать информацию о процессоре, памяти, диске, сети, датчиках и запущенных процессах в системе. Примеры базового использования показаны на картинке.
Если говорить про практические применение, psutil полезен в основном для мониторинга системы, ограничения ресурсов процессов и управления запущенными процессами.
Помимо привычных Windows, MacOS и Linux, библиотека также поддерживает системы FreeBSD, OpenBSD, NetBSD, Sun Solaris и AIX.
Подписывайтесь на канал 👉@pythonofff
👍2
Как отслеживать url в формах на django?
Чтобы отслеживать URL в формах Django, вы можете использовать метод
В моделе добавьте метод get_absolute_url() для создания URL объекта. Например:
Создайте HTML-шаблон для формы, в которой вы можете использовать action для указания URL, куда будет отправляться данные формы. Например:
В файле urls.py определите путь к вашему представлению. Укажите имя представления, чтобы использовать его в методе get_absolute_url() вашей модели.
В представлении (views.py) реализуйте обработку формы. Например:
Теперь, когда вы отправляете форму, она будет отправляться на конкретный URL, который вы определили в методе
Подписывайтесь на канал 👉@pythonofff
Чтобы отслеживать 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
Разница между == и is
Многие разработчики не понимают разницу этих двух операторов сравнения. Из-за неправильного использования == и is в приложениях могут возникнуть странные ошибки.
Оператор == проверяет равенство значений двух объектов. А оператор is проверяет идентичность самих объектов. Его используют, чтобы удостовериться, что переменные указывают на один и тот же объект в памяти.
Но Python в целях производительности кеширует малые числа и короткие строки, поэтому возможны некоторые казусы, как в примере выше.
Подписывайтесь на канал 👉@pythonofff
Многие разработчики не понимают разницу этих двух операторов сравнения. Из-за неправильного использования == и is в приложениях могут возникнуть странные ошибки.
Оператор == проверяет равенство значений двух объектов. А оператор is проверяет идентичность самих объектов. Его используют, чтобы удостовериться, что переменные указывают на один и тот же объект в памяти.
Но Python в целях производительности кеширует малые числа и короткие строки, поэтому возможны некоторые казусы, как в примере выше.
Подписывайтесь на канал 👉@pythonofff