Forwarded from Python Education
Как использовать ключевое слово global в Python
По умолчанию Python думает, что внутри функции вы хотите использовать локальную переменную.
И когда мы сначала пытаемся вывести значение переменной, а затем повторно присваиваем значение переменной, к которой мы пытаемся получить доступ, Python запутывается.
По умолчанию Python думает, что внутри функции вы хотите использовать локальную переменную.
И когда мы сначала пытаемся вывести значение переменной, а затем повторно присваиваем значение переменной, к которой мы пытаемся получить доступ, Python запутывается.
Forwarded from Python Education
Введение в super()
С точки зрения поддерживаемости super() может быть полезен даже при одиночном наследовании. Если по какой-либо причине ваш дочерний класс меняет свой шаблон наследования (т.е. изменяется родительский класс или происходит переход к множественному наследованию), то нет необходимости искать и заменять все устаревшие ссылки на ParentClass.method name(). Таким образом, использование super() позволит всем изменениям пройти через изменение в операторе класса.
С точки зрения поддерживаемости super() может быть полезен даже при одиночном наследовании. Если по какой-либо причине ваш дочерний класс меняет свой шаблон наследования (т.е. изменяется родительский класс или происходит переход к множественному наследованию), то нет необходимости искать и заменять все устаревшие ссылки на ParentClass.method name(). Таким образом, использование super() позволит всем изменениям пройти через изменение в операторе класса.
Forwarded from Python Education
Как удалить ключ из словаря при помощи генератора
Генераторы словаря в Python — это быстрые однострочники, которые позволяют легко создавать словари.
Здесь важно понимать, что мы создаем новый словарь. Поэтому это не самый экономичный метод удаления ключа. Но если вы уверены, что ключ существует, а словарь не слишком велик, можно воспользоваться и генератором.
Генераторы словаря в Python — это быстрые однострочники, которые позволяют легко создавать словари.
Здесь важно понимать, что мы создаем новый словарь. Поэтому это не самый экономичный метод удаления ключа. Но если вы уверены, что ключ существует, а словарь не слишком велик, можно воспользоваться и генератором.
Forwarded from Python Education
Резюме статьи
Gensim — отличный пакет Python для большого количества задач нейролингвистического программирования (НЛП). Он включает в себя довольно надежную функцию резюмирования, которой достаточно легко пользоваться. Она реализует разновидность алгоритма TextRank.
Для использования этой функции нам нужна лишь одна строчка кода
Gensim — отличный пакет Python для большого количества задач нейролингвистического программирования (НЛП). Он включает в себя довольно надежную функцию резюмирования, которой достаточно легко пользоваться. Она реализует разновидность алгоритма TextRank.
Для использования этой функции нам нужна лишь одна строчка кода
Forwarded from Python Education
Используйте настраиваемый User-Agent
Механизм защиты от скрапинга – User-Agent. UA – это заголовок, который браузеры отправляют в запросах для идентификации. Обычно он представляет собой длинную строку, в которой объявляется имя браузера, версия, платформа и многое другое.
Механизм защиты от скрапинга – User-Agent. UA – это заголовок, который браузеры отправляют в запросах для идентификации. Обычно он представляет собой длинную строку, в которой объявляется имя браузера, версия, платформа и многое другое.
Forwarded from Python Education
Специальные переменные
Одна примечательная «особая» переменная, которую вы часто можете видеть в коде Python, — это просто символ подчеркивания. По соглашению так именуют малозначимые переменные. Откуда же берутся такие переменные? Например, иногда надо недолго хранить значение, возвращаемое функцией. В примере ниже мы сканируем строки датафрейма из библиотеки pandas
Одна примечательная «особая» переменная, которую вы часто можете видеть в коде Python, — это просто символ подчеркивания. По соглашению так именуют малозначимые переменные. Откуда же берутся такие переменные? Например, иногда надо недолго хранить значение, возвращаемое функцией. В примере ниже мы сканируем строки датафрейма из библиотеки pandas
Forwarded from Python Education
Pyautogui
Очень интересная по своим возможностям библиотека. Она позволяет манипулировать указателем (мышкой) и клавиатурой прямо из кода. Столько всего интересного можно придумать с данной библиотекой.
Можно написать простейший кликер и "фармить" быстрее других игроков. Можно автоматизировать часть своей работы, а некоторые умудрились обмануть начальство имитируя работу на компьютере благодаря данной библиотеке (существуют программы, отслеживающие работает ли человек за ПК)
Мы показываем базовое управление, больше информации ищите в документации
#pyautogui
Очень интересная по своим возможностям библиотека. Она позволяет манипулировать указателем (мышкой) и клавиатурой прямо из кода. Столько всего интересного можно придумать с данной библиотекой.
Можно написать простейший кликер и "фармить" быстрее других игроков. Можно автоматизировать часть своей работы, а некоторые умудрились обмануть начальство имитируя работу на компьютере благодаря данной библиотеке (существуют программы, отслеживающие работает ли человек за ПК)
Мы показываем базовое управление, больше информации ищите в документации
#pyautogui
Forwarded from Python Education
Определение метода тестирования
Это нужно для того, чтобы мы могли оценивать нашу модель и выводить точность на тестовом наборе. Большие отличия от метода тестирования заключаются в том, что мы используем model.eval(), чтобы перевести модель в режим тестирования, и torch.no grad(), который отключит вычисление градиента, так как мы не используем обратное распространение во время тестирования. Наконец, мы вычисляем средние потери для набора тестов и общую точность.
Это нужно для того, чтобы мы могли оценивать нашу модель и выводить точность на тестовом наборе. Большие отличия от метода тестирования заключаются в том, что мы используем model.eval(), чтобы перевести модель в режим тестирования, и torch.no grad(), который отключит вычисление градиента, так как мы не используем обратное распространение во время тестирования. Наконец, мы вычисляем средние потери для набора тестов и общую точность.
Forwarded from Python Education
В одну строчку
Python гибкий язык и позволяет многое сделать в одну строчку. К примеру, матрицу из одних нулей. Или постоянно возрастающий список.
Такие методы лучше использовать когда надо сгенерировать что-то маленькое или нужное. Если использовать нужно сейчас и строго по одному, то лучше использовать итераторы. Об итераторах подробнее расскажем чуть позже.
Примеры списочных выражений на картинке. В следующий раз не придется набирать одинаковый текст несколько раз.
Python гибкий язык и позволяет многое сделать в одну строчку. К примеру, матрицу из одних нулей. Или постоянно возрастающий список.
Такие методы лучше использовать когда надо сгенерировать что-то маленькое или нужное. Если использовать нужно сейчас и строго по одному, то лучше использовать итераторы. Об итераторах подробнее расскажем чуть позже.
Примеры списочных выражений на картинке. В следующий раз не придется набирать одинаковый текст несколько раз.
Forwarded from Python Education
Проверка прав доступа через декораторы
Распространенным шаблоном при работе с веб-приложениями является проверка есть ли у клиента разрешение на выполнение запрашиваемого действия. Проверки включают получение значения из заголовка HTTP запроса (токен) или из cookie браузера, для идентификации клиента. Затем, когда клиент распознан, используется специальный метод для определения допустимых прав доступа у данного клиента.
Поскольку фактическая проверка разрешений зависит от приложения, здесь будет показан общий пример, в котором просто дает разрешение на выполнение запроса на основе значения из HTTP заголовка.
Распространенным шаблоном при работе с веб-приложениями является проверка есть ли у клиента разрешение на выполнение запрашиваемого действия. Проверки включают получение значения из заголовка HTTP запроса (токен) или из cookie браузера, для идентификации клиента. Затем, когда клиент распознан, используется специальный метод для определения допустимых прав доступа у данного клиента.
Поскольку фактическая проверка разрешений зависит от приложения, здесь будет показан общий пример, в котором просто дает разрешение на выполнение запроса на основе значения из HTTP заголовка.
Forwarded from Python Education
Базы Данных SQL
Работа с текстовыми удобна в маленьких проектах. Но, когда данных становится в разы больше, встает вопрос о более быстром их получении и записи.
Специально для этого существует язык SQL. Мы будем рассматривать SQLite. Надо понимать, что библиотек работающих на нем, как и программ огромное множество, но синтаксис у всех единый. Достаточно выучить просто SQL и вы сможете спокойно перейти на более мощный PostgreSQL.
Так почему SQLite?
Он прост и компактен. Для обучения и для программ с тысячью записями самое то. Но если данных уже на несколько сотен тысяч рекомендую взять что-то по мощнее. Хотя, многие утверждают, что скорость страдает из-за высокой защиты.
На картинке SQL код, который создает таблицу книг.
#Базы_Данных #SQL
Работа с текстовыми удобна в маленьких проектах. Но, когда данных становится в разы больше, встает вопрос о более быстром их получении и записи.
Специально для этого существует язык SQL. Мы будем рассматривать SQLite. Надо понимать, что библиотек работающих на нем, как и программ огромное множество, но синтаксис у всех единый. Достаточно выучить просто SQL и вы сможете спокойно перейти на более мощный PostgreSQL.
Так почему SQLite?
Он прост и компактен. Для обучения и для программ с тысячью записями самое то. Но если данных уже на несколько сотен тысяч рекомендую взять что-то по мощнее. Хотя, многие утверждают, что скорость страдает из-за высокой защиты.
На картинке SQL код, который создает таблицу книг.
#Базы_Данных #SQL