Индексация списков в Python
Списки поддерживают порядок элементов.
Каждый элемент имеет собственный порядковый номер — индекс, который можно использовать для доступа к самому элементу.
Индексы в Python (и любом другом современном языке программирования) начинаются с 0 и увеличиваются для каждого элемента в списке.
#theory // Just Python
Списки поддерживают порядок элементов.
Каждый элемент имеет собственный порядковый номер — индекс, который можно использовать для доступа к самому элементу.
Индексы в Python (и любом другом современном языке программирования) начинаются с 0 и увеличиваются для каждого элемента в списке.
#theory // Just Python
Как формировать списки в Python
Чтобы создать новый список, сначала дайте ему имя. Затем добавьте оператор присваивания (=) и пару квадратных скобок. Внутри скобок добавьте значения, которые должны содержаться в списке.
#theory // Just Python
Чтобы создать новый список, сначала дайте ему имя. Затем добавьте оператор присваивания (=) и пару квадратных скобок. Внутри скобок добавьте значения, которые должны содержаться в списке.
#theory // Just Python
Регистрация функции с помощью декораторов в Python
Самый простой тип декоратора используется для регистрации функции в качестве обработчика события. Данный шаблон очень распространен в приложениях на Python, так как он позволяет двум или более подсистемам взаимодействовать, не зная ничего друг о друге. Данный процесс известен как «несвязанный» дизайн.
#theory // Just Python
Самый простой тип декоратора используется для регистрации функции в качестве обработчика события. Данный шаблон очень распространен в приложениях на Python, так как он позволяет двум или более подсистемам взаимодействовать, не зная ничего друг о друге. Данный процесс известен как «несвязанный» дизайн.
#theory // Just Python
Пример элементарных декораторов в Python
Прежде чем мы углубимся в новую территорию, давайте рассмотрим, как работают простые декораторы из первого урока. Ниже представлен пример, введенный нами в оболочку IDLE Python. Попробуйте поэкспериментировать, запустите IDLE оболочку и введите код сами.
#theory // Just Python
Прежде чем мы углубимся в новую территорию, давайте рассмотрим, как работают простые декораторы из первого урока. Ниже представлен пример, введенный нами в оболочку IDLE Python. Попробуйте поэкспериментировать, запустите IDLE оболочку и введите код сами.
#theory // Just Python
Нужны ли декораторам аргументы?
Есть множество проблем, которые можно решить с помощью декораторов, и некоторые из них были рассмотрены в предыдущих уроках данного курса. Однако в некоторых ситуациях могут пригодиться и аргументы. Рассмотрим в качестве примера знаменитый декоратор app.route из веб-фреймворка Flask
#theory // Just Python
Есть множество проблем, которые можно решить с помощью декораторов, и некоторые из них были рассмотрены в предыдущих уроках данного курса. Однако в некоторых ситуациях могут пригодиться и аргументы. Рассмотрим в качестве примера знаменитый декоратор app.route из веб-фреймворка Flask
#theory // Just Python
inspect добро пожаловать за кулисы
Модуль inspect пригодится вам для использования того, что происходит за кулисами в Python. Вы так же можете вызывать его методы в них же!
Снизу пригодится метод inspect.getsource() для вывода его собственного исходного кода. Еще используется метод inspect.getmodule() для вывода модуля, в котором его утвердили.
#theory // Just Python
Модуль inspect пригодится вам для использования того, что происходит за кулисами в Python. Вы так же можете вызывать его методы в них же!
Снизу пригодится метод inspect.getsource() для вывода его собственного исходного кода. Еще используется метод inspect.getmodule() для вывода модуля, в котором его утвердили.
#theory // Just Python
pprint - Стандартная функция Python
Print() делает своё дело. Но если попытаться вывести большой вложенный объект, результат будет выглядеть не так уж и приятно.
Тут на помощь приходит модуль из стандартной библиотеки pprint (pretty print). С его помощью можно выводить объекты со сложной структурой в читабельном виде.
#theory // Just Python
Print() делает своё дело. Но если попытаться вывести большой вложенный объект, результат будет выглядеть не так уж и приятно.
Тут на помощь приходит модуль из стандартной библиотеки pprint (pretty print). С его помощью можно выводить объекты со сложной структурой в читабельном виде.
#theory // Just Python
Использование аннотации типов
Позволяет ускорить процесс разработки. Но, мало что раздражает так сильно, как ошибка времени выполнения, возникшая из-за простого несовпадения типа.
К тому же они позволяют использовать инструменты для проверки типов, чтобы отлавливать ошибки TypeError.
#theory // Just Python
Позволяет ускорить процесс разработки. Но, мало что раздражает так сильно, как ошибка времени выполнения, возникшая из-за простого несовпадения типа.
К тому же они позволяют использовать инструменты для проверки типов, чтобы отлавливать ошибки TypeError.
#theory // Just Python
PUT
Иногда нам часто приходится обновлять существующие данные в API. Используя запрос PUT, мы можем обновить данные полностью. Это означает, что, когда мы делаем запрос PUT, он заменяет все старые данные новыми.
В запросе POST мы создали новый продукт с идентификатором 21. Обновив старый продукт на новый, сделав запрос PUT к конечной точке products/<product_id>.
#theory // Just Python
Иногда нам часто приходится обновлять существующие данные в API. Используя запрос PUT, мы можем обновить данные полностью. Это означает, что, когда мы делаем запрос PUT, он заменяет все старые данные новыми.
В запросе POST мы создали новый продукт с идентификатором 21. Обновив старый продукт на новый, сделав запрос PUT к конечной точке products/<product_id>.
#theory // Just Python
Перегрузки операторов - о которых говорят все настоящие computer-scientis’ы
В Python есть поддержка перегрузки операторов — одной из тех штук.
На самом деле идея проста. Когда-нибудь задумывались, почему Python позволяет использовать оператор + как для сложения чисел, так и для конкатенации строк? За этим как раз и стоит перегрузка операторов.
Вы можете определять объекты, которые используют стандартные символы операторов любым образом. Это позволяет применять их в контексте объектов, с которыми вы работаете.
#theory // Just Python
В Python есть поддержка перегрузки операторов — одной из тех штук.
На самом деле идея проста. Когда-нибудь задумывались, почему Python позволяет использовать оператор + как для сложения чисел, так и для конкатенации строк? За этим как раз и стоит перегрузка операторов.
Вы можете определять объекты, которые используют стандартные символы операторов любым образом. Это позволяет применять их в контексте объектов, с которыми вы работаете.
#theory // Just Python
Как применить f-string для форматирования строк с вычислениями
Когда вам нужно встроить вычисления прямо в строку или форматировать вывод значений переменных, f-string (форматированные строки) — это быстрый и удобный способ сделать это.
Использование f-string позволяет упростить форматирование строк и объединить в одной строке текст с результатами вычислений, что делает код более чистым и эффективным.
#theory // Just Python
Когда вам нужно встроить вычисления прямо в строку или форматировать вывод значений переменных, f-string (форматированные строки) — это быстрый и удобный способ сделать это.
Использование f-string позволяет упростить форматирование строк и объединить в одной строке текст с результатами вычислений, что делает код более чистым и эффективным.
#theory // Just Python
POST - запрос
Для чего мы используем запрос POST? Для добавления новых данных в REST API. Все данные отправляются на сервер в формате JSON, который выглядит как словарь Python. Согласно документации Fake Store API, у продукта есть следующие атрибуты: title, price, description, image и category.
#theory // Just Python
Для чего мы используем запрос POST? Для добавления новых данных в REST API. Все данные отправляются на сервер в формате JSON, который выглядит как словарь Python. Согласно документации Fake Store API, у продукта есть следующие атрибуты: title, price, description, image и category.
#theory // Just Python
Запрос DELETE
Вам нужно удалить ресурс из API? Вы можете использовать запрос DELETE. Здесь мы будем удалять товар с идентификатором, равным 21.
#theory // Just Python
Вам нужно удалить ресурс из API? Вы можете использовать запрос DELETE. Здесь мы будем удалять товар с идентификатором, равным 21.
#theory // Just Python
Создание генераторов в Python
Вместо выражения return генераторы возвращают значения путем многократного применения выражения yield. При каждом новом вызове функции возвращается следующее значение итерируемой последовательности.
Генератор может быть вызван через функцию next(). При каждом вызове next() возвращается следующее значение генератора.
#theory // Just Python
Вместо выражения return генераторы возвращают значения путем многократного применения выражения yield. При каждом новом вызове функции возвращается следующее значение итерируемой последовательности.
Генератор может быть вызван через функцию next(). При каждом вызове next() возвращается следующее значение генератора.
#theory // Just Python
Использование User-Agent
Механизм защиты от скрапинга – User-Agent. UA – это заголовок, который браузеры отправляют в запросах для идентификации. Обычно он представляет собой длинную строку, в которой объявляется имя браузера, версия, платформа и многое другое.
#theory // Just Python
Механизм защиты от скрапинга – User-Agent. UA – это заголовок, который браузеры отправляют в запросах для идентификации. Обычно он представляет собой длинную строку, в которой объявляется имя браузера, версия, платформа и многое другое.
#theory // Just Python
Как работать с IP-адресом
Вы можете менять IP-адрес каждые несколько секунд или для каждого запроса. Целевой сервер не может идентифицировать ваши запросы и не блокирует эти IP-адреса. Вы можете создать огромный список прокси и выбирать по одному для каждого запроса случайным образом. Или используйте вращающийся прокси, который сделает это за вас. После этого изменения шансы на правильную работу скрапера резко возрастают.
#theory // Just Python
Вы можете менять IP-адрес каждые несколько секунд или для каждого запроса. Целевой сервер не может идентифицировать ваши запросы и не блокирует эти IP-адреса. Вы можете создать огромный список прокси и выбирать по одному для каждого запроса случайным образом. Или используйте вращающийся прокси, который сделает это за вас. После этого изменения шансы на правильную работу скрапера резко возрастают.
#theory // Just Python
Как можно скопировать содержимое файла?
В большинстве случаев возникает необходимость скопировать содержимое вашей ячейки в скрипт python или текстовый файл непосредственно из вашего блокнота Jupyter.
Вместо того чтобы копировать все и создавать новый файл, вы можете напрямую экспортировать свои данные, добавив команду writefile в ячейку перед кодом.
#theory // Just Python
В большинстве случаев возникает необходимость скопировать содержимое вашей ячейки в скрипт python или текстовый файл непосредственно из вашего блокнота Jupyter.
Вместо того чтобы копировать все и создавать новый файл, вы можете напрямую экспортировать свои данные, добавив команду writefile в ячейку перед кодом.
#theory // Just Python
Синтаксис
Синтаксис представления списков обеспечивает простой и надежный способ для создания новых списков из уже существующих. Допустим, нам нужен новый список, в котором каждый элемент старого списка будет умножен на 3. При помощи цикла for мы можем это сделать
#theory // Just Python
Синтаксис представления списков обеспечивает простой и надежный способ для создания новых списков из уже существующих. Допустим, нам нужен новый список, в котором каждый элемент старого списка будет умножен на 3. При помощи цикла for мы можем это сделать
#theory // Just Python
Выход пользователя из профиля
Пользователь успешно прошел процедуру аутентификации, но… как теперь выйти? Можно было бы зайти в админку и выйти оттуда, однако есть способ получше. Добавим ссылку выхода, которая будет перенаправлять человека на домашнюю страницу. Благодаря системе аутентификации Django, добиться такого сценария проще простого.
В файле шаблона base.html добавим ссылку {% url 'logout' %} для выхода сразу после приветствия пользователя.
#theory // Just Python
Пользователь успешно прошел процедуру аутентификации, но… как теперь выйти? Можно было бы зайти в админку и выйти оттуда, однако есть способ получше. Добавим ссылку выхода, которая будет перенаправлять человека на домашнюю страницу. Благодаря системе аутентификации Django, добиться такого сценария проще простого.
В файле шаблона base.html добавим ссылку {% url 'logout' %} для выхода сразу после приветствия пользователя.
#theory // Just Python
kwargs в Python?
Обе звездочки () являются важным элементом, так как kwargs представляет собой общепринятую идиому, хотя она и не принуждается к использованию языком. Форма kwargs с двумя звездочками используется в качестве параметра для отправки в функции списка аргументов переменной длины без ключевого слова.
#theory // Just Python
Обе звездочки () являются важным элементом, так как kwargs представляет собой общепринятую идиому, хотя она и не принуждается к использованию языком. Форма kwargs с двумя звездочками используется в качестве параметра для отправки в функции списка аргументов переменной длины без ключевого слова.
#theory // Just Python
newspaper3k - с этим вы еще не встречались
Приготовьтесь к тому, что модуль newspaper снесёт вам крышу.
Он помогает извлекать статьи и связанные мета-данные из многих разных источников. Так же можно извлечь изображения, текста и имена авторов.
В нём даже имеется встроенная NLP-функциональность.
В этом случае, если вы собирались использовать BeautifulSoup или другую библиотеку для вебскрапинга так же в следующем проекте, лучше сэкономьте своё время и силы и загрузите newspaper
#theory // Just Python
Приготовьтесь к тому, что модуль newspaper снесёт вам крышу.
Он помогает извлекать статьи и связанные мета-данные из многих разных источников. Так же можно извлечь изображения, текста и имена авторов.
В нём даже имеется встроенная NLP-функциональность.
В этом случае, если вы собирались использовать BeautifulSoup или другую библиотеку для вебскрапинга так же в следующем проекте, лучше сэкономьте своё время и силы и загрузите newspaper
#theory // Just Python