ООП предлагает ряд преимуществ, которые делают его популярным подходом в программировании.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥3❤2
Методы класса привязаны к самому классу, а не его экземпляру. Они могут менять состояние класса, что отразится на всех объектах этого класса, но не могут менять конкретный объект.
@ classmethod — это обычный метод класса, имеющий доступ ко всем атрибутам класса, через который он был вызван.Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥3❤1
Сначала необходимо создать экземпляр LoginManager и привязать его к приложению Flask. Затем можно определить функцию загрузки пользователя с помощью декоратора
@login_manager.user_loader. Эта функция должна принимать идентификатор пользователя в качестве параметра и возвращать объект пользователя.После настройки LoginManager можно использовать его для защиты определенных страниц и контролировать доступ к ним только для аутентифицированных пользователей. Для этого можно использовать декоратор
@login_required, который применяется к функции представления и автоматически проверяет статус аутентификации пользователя перед выполнением функции.Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5❤3👍2
with open("file.txt", "r") as file:
data = file.read()
print(data)Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤3🔥1👏1
import socket
with socket.create_connection(("example.com", 80)) as connection:
connection.sendall(b"GET / HTTP/1.1\\r\\nHost: example.com\\r\\n\\r\\n")
response = connection.recv(4096)
print(response.decode())
http://example.com/ на порту 80. Блок кода, связанный с оператором with, выполняет отправку HTTP-запроса и получение ответа. После выполнения блока кода сетевое соединение автоматически закрывается.Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤3🔥3
При разработке проектов на Python часто возникает необходимость использовать различные зависимости и библиотеки. Однако, каждый проект может требовать разные версии пакетов или зависимостей. Использование общей системной установки пакетов может привести к конфликтам и несовместимости. Вот где на помощь приходит папка venv - она позволяет создать изолированную среду, в которой можно устанавливать и использовать нужные версии пакетов без влияния на системные установки.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12❤6🔥2
Например, если у нас есть класс "Автомобиль", мы можем создать несколько объектов этого класса, таких как "Машина1" и "Машина2". У каждого объекта будет свой набор атрибутов, таких как "марка", "модель" и методов, таких как "завести двигатель" или "передвинуться вперед".
Во-первых, объектно-ориентированное программирование облегчает структурирование кода и делает его более логичным и понятным. Каждый объект отвечает за свои собственные данные и методы.
Во-вторых, объекты позволяют создавать сложные структуры данных и абстракции. Мы можем создавать классы, которые представляют реальные или воображаемые объекты, и определять, их взаимодействие друг с другом.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤3🔥2
👍4❤3
Сначала мы берем нулевой элемент списка - это и есть наша строка. А после, мы делаем выбор по индексу 1 —> получаем строку, которая состоит из 1-ого символа, который и рандомим)
Это символ -> "1"
Проверка isnumeric чекает на то, является ли это числом —> да. Значит if сработает и выдаст True
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤3🔥2🤯1
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👍3🔥2
Функция all принимает на вход итерируемый объект (например, список) и возвращает True, если все его элементы являются истинными (или, если итерируемый объект пустой). Например:
numbers = [1, 2, 3, 4]
print(all(numbers)) # Выводит: True
Функция any, как и all, принимает на вход итерируемый объект, но возвращает True, если хоть один из его элементов является истинным. Если итерируемый объект пустой, функция any возвращает False. Например:
numbers = [0, 0, 1, 0]
print(any(numbers)) # Выводит: True
Функции all и any можно использовать вместе, чтобы проверить сложные условия. Например, мы можем проверить, все ли элементы в списке положительные и есть ли среди них хоть одно четное число:
numbers = [1, 2, 3, 4]
print(all(num > 0 for num in numbers) and any(num % 2 == 0 for num in numbers)) # Выводит: True
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍4❤3
Что выдаст код выше❔
Anonymous Quiz
2%
Ben Big
2%
Big Ben
14%
Ben Moon
18%
Ben Big Moon
56%
Moon
7%
Error
👍6❤3
Вторым этапом идет добавление (потому что буква 'a') к уже существующему слову Ben слова Big —> BenBig.
Ну а далее мы открываем опять файл на запись через 'w', что означает, что ВСЕ данные в файле будут перезаписаны. —> BenBig удалится, а Moon появится.
Как результат, при чтении мы получим просто слово Moon.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12❤5🔥2
Первая команда, которую мы рассмотрим, это открытие изображения. С помощью функции
open() из библиотеки PIL вы можете загрузить изображение из файла и сохранить его в переменную. Например, следующий код загрузит изображение с названием "image.jpg":from PIL import Image
image = Image.open("image.jpg")
После выполнения этого кода, изображение будет загружено и готово к дальнейшей обработке.
Вторая команда, которую мы рассмотрим, это изменение размера изображения. Библиотека PIL предоставляет функцию
resize(), которая позволяет изменять размер изображения. Например, следующий код изменит размер изображения до 500 пикселей по ширине и 300 пикселей по высоте:resized_image = image.resize((500, 300))
Вы можете указать любые значения для ширины и высоты в пикселях, чтобы получить нужный размер изображения.
Третья команда, которую мы рассмотрим, это сохранение изображения. После выполнения всех необходимых операций с изображением, вы можете сохранить его в файл с помощью функции
save(). Например, следующий код сохранит измененное изображение в файл с названием "resized_image.jpg":resized_image.save("resized_image.jpg")
Вы также можете указать другой формат файла, добавив соответствующее расширение к названию файла.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9❤3👍2
# Допустим, у нас есть список слов
words = ["Привет", "мир", "я", "Python"]
# И мы хотим объединить их в предложение
sentence = ' '.join(words)
print(sentence)
join() берет список (words в нашем случае) и использует пробел ' ' в качестве "клея", чтобы соединить все слова в одну строку.
В результате каждый элемент списка становится частью большой строки, разделенной пробелами или любым другим символом, который мы укажем перед join().
users = ["RimMirK", "Anuke", "compuser"]
result = ', '.join(users)
print(result) # "RimMirK, Anuke, compuser"
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤3🔥2
Работаете на Python? Хотите овладеть созданием веб-приложений с использованием Django?
Ждём вас на открытом практическом уроке «Введение в Django REST API» от OTUS, где мы:
— познакомимся с основой работы с Django и его ролью в веб-разработке;
— разберем Views в Django;
— изучим Middleware и их использование для дополнительной обработки запросов и ответов;
— научимся разрабатывать RESTful API с помощью Django REST Framework.
Спикер Валентин Шилин — старший программист и аналитик данных в зарубежной компании, опытный преподаватель.
Встречаемся 16 июля в 20:00 мск в преддверии старта курса «Python Developer. Professional». Все участники вебинара получат специальную цену на обучение.
🔴 Регистрируйтесь прямо сейчас, чтобы не пропустить бесплатный урок: https://otus.pw/mIKo/?erid=LjN8KRWjz
Ждём вас на открытом практическом уроке «Введение в Django REST API» от OTUS, где мы:
— познакомимся с основой работы с Django и его ролью в веб-разработке;
— разберем Views в Django;
— изучим Middleware и их использование для дополнительной обработки запросов и ответов;
— научимся разрабатывать RESTful API с помощью Django REST Framework.
Спикер Валентин Шилин — старший программист и аналитик данных в зарубежной компании, опытный преподаватель.
Встречаемся 16 июля в 20:00 мск в преддверии старта курса «Python Developer. Professional». Все участники вебинара получат специальную цену на обучение.
🔴 Регистрируйтесь прямо сейчас, чтобы не пропустить бесплатный урок: https://otus.pw/mIKo/?erid=LjN8KRWjz
👍4
#abcdabcdabcd
Интересным вариантом может быть определение списка с постоянным значением, скажем, ноль.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤3🔥2