Forwarded from Супермаркетинг
This media is not supported in your browser
VIEW IN TELEGRAM
В Циндао открыли пивную биржу
Цены меняются в реальном времени на плюс-минус 10 процентов.
🔥 — Требуем IPO в России
😁 — Я, получается, инвестор?
🗿 — С такими колебаниями только трейдить
Цены меняются в реальном времени на плюс-минус 10 процентов.
🔥 — Требуем IPO в России
😁 — Я, получается, инвестор?
🗿 — С такими колебаниями только трейдить
Пример использования обработки исключений
Ошибки могу вызывать полное отключение и сбой в работе скрипта. Важно находить уязвимые части кода и предотвращать поломки.
Конструкция try except позволяет делать исключения для тех функций, которые могу привести к сбою.
try:
уязвимая функция
except:
что делаем если вызвала ошибку
#theory // Just Python
Ошибки могу вызывать полное отключение и сбой в работе скрипта. Важно находить уязвимые части кода и предотвращать поломки.
Конструкция try except позволяет делать исключения для тех функций, которые могу привести к сбою.
try:
уязвимая функция
except:
что делаем если вызвала ошибку
#theory // Just Python
Как работает директива repr
Для установки корректного официального определения класса используется метод repr(), который определяет строковое обозначение класса для программиста.
По умолчанию оно представляет собой название класса и адрес в памяти.
Используется для отладки приложения, описание даст информации больше, чем имя и адрес в памяти.
#theory // Just Python
Для установки корректного официального определения класса используется метод repr(), который определяет строковое обозначение класса для программиста.
По умолчанию оно представляет собой название класса и адрес в памяти.
Используется для отладки приложения, описание даст информации больше, чем имя и адрес в памяти.
#theory // Just Python
Кортежи в Python
Кортеж - неизменяемый список, группа объектов.
Преимущества перед списками:
- Защита от изменений
- Размер меньше
- Скорость работы
Для создания кортежа используется функция tuple(), использование функции с интегрируемым объектом поместит все его элементы в кортеж.
Кортежи очень полезны, когда нужно передать группу элементов и не нагружать скрипт.
#theory // Just Python
Кортеж - неизменяемый список, группа объектов.
Преимущества перед списками:
- Защита от изменений
- Размер меньше
- Скорость работы
Для создания кортежа используется функция tuple(), использование функции с интегрируемым объектом поместит все его элементы в кортеж.
Кортежи очень полезны, когда нужно передать группу элементов и не нагружать скрипт.
#theory // Just Python
Применение аннотации типов
Python - язык с динамической типизацией. Это может быть как преимуществом так и недостатком. Для четкого определения типа переменных существуют аннотации, которые позволят явно указать тип данных объекта или тип данных возвращаемых функцией.
У аннотаций следующий варианты синтаксиса:
1. имя_переменной : тип_данных
2. имя_переменной : тип_данных = значение
3. def my_function(arg: тип_данных) -> тип_возвращаемого_значения
#theory // Just Python
Python - язык с динамической типизацией. Это может быть как преимуществом так и недостатком. Для четкого определения типа переменных существуют аннотации, которые позволят явно указать тип данных объекта или тип данных возвращаемых функцией.
У аннотаций следующий варианты синтаксиса:
1. имя_переменной : тип_данных
2. имя_переменной : тип_данных = значение
3. def my_function(arg: тип_данных) -> тип_возвращаемого_значения
#theory // Just Python
Как работает all и any?
Функция all() возвращает True если список пустой или все его элементы истинны.
Функция any() возвращает True если хотя бы один из элементов списка истинный.
Функционал довольно простой и примитивный, но в скольких ситуациях может облегчить жизнь! В купе с for и другими конструкциями очень помогает сократить некоторые громоздкие функции, а также быстро проверить список на различные параметры.
#theory // Just Python
Функция all() возвращает True если список пустой или все его элементы истинны.
Функция any() возвращает True если хотя бы один из элементов списка истинный.
Функционал довольно простой и примитивный, но в скольких ситуациях может облегчить жизнь! В купе с for и другими конструкциями очень помогает сократить некоторые громоздкие функции, а также быстро проверить список на различные параметры.
#theory // Just Python
Маркетинг за 4 дня: бесплатно!
Зарплата начинающего маркетолога от 70 000₽, а стоимость обучения на профессию в онлайн-школах основам от 120 000 до 250 000 рублей.
Сейчас Skillbox дарит мини-курс на 4 дня: попробуйте себя в интернет-маркетинге, SMM, таргетинге и копирайтинге. Только практика, полезные чек-листы и доступ к материалам навсегда.
Переходите по ссылке и забирайте курс по маркетингу. Акция продлится до 19 мая: https://go.avnxt.site/8b2d902d157e1120?erid=2VfnxxcSezk&m=1
Зарплата начинающего маркетолога от 70 000₽, а стоимость обучения на профессию в онлайн-школах основам от 120 000 до 250 000 рублей.
Сейчас Skillbox дарит мини-курс на 4 дня: попробуйте себя в интернет-маркетинге, SMM, таргетинге и копирайтинге. Только практика, полезные чек-листы и доступ к материалам навсегда.
Переходите по ссылке и забирайте курс по маркетингу. Акция продлится до 19 мая: https://go.avnxt.site/8b2d902d157e1120?erid=2VfnxxcSezk&m=1
Передаем содержимое словаря
Две звездочки перед объектом словаря позволяют передать содержимое словаря как аргументы. Где ключи словаря - имя аргумента, а значения передаются в функцию.
Это полезно, при обработке словарей, для написания функций оберток, передающих все полученные значения.
Обе конструкции print в конце примера выполняют одинаковые действия.
#theory // Just Python
Две звездочки перед объектом словаря позволяют передать содержимое словаря как аргументы. Где ключи словаря - имя аргумента, а значения передаются в функцию.
Это полезно, при обработке словарей, для написания функций оберток, передающих все полученные значения.
Обе конструкции print в конце примера выполняют одинаковые действия.
#theory // Just Python
Анонимные функции
Короткая запись простой функции, необходимая для решения одной конкретной задачи удобная вещь. Дабы не нагромождать код кучей функцией, использующихся один раз удобнее использовать анонимные функции.
lambda - ключевое слово для объявления анонимной функции.
На примере
1. Обычная функция сложения
2. Анонимная функция, помещенная в переменную
3. Обособленная анонимная функция в операторе print().
#theory // Just Python
Короткая запись простой функции, необходимая для решения одной конкретной задачи удобная вещь. Дабы не нагромождать код кучей функцией, использующихся один раз удобнее использовать анонимные функции.
lambda - ключевое слово для объявления анонимной функции.
На примере
1. Обычная функция сложения
2. Анонимная функция, помещенная в переменную
3. Обособленная анонимная функция в операторе print().
#theory // Just Python
Управляем браузером. Библиотека Selenium.
При выполнении данного кода откроется браузер Firefox и перейдет на сайт google.com.
Возможности:
1. Автоматизация работы браузера.
2. Парсинг сайтов.
3. Нажатие на кнопки.
4. Эмуляция различных действий пользователя.
5. Отправка GET/POST запросов.
6. Открытие окон.
7. Поддержка основных браузеров.
Документация, установка.
#theory // Just Python
При выполнении данного кода откроется браузер Firefox и перейдет на сайт google.com.
Возможности:
1. Автоматизация работы браузера.
2. Парсинг сайтов.
3. Нажатие на кнопки.
4. Эмуляция различных действий пользователя.
5. Отправка GET/POST запросов.
6. Открытие окон.
7. Поддержка основных браузеров.
Документация, установка.
#theory // Just Python
object
Базовый класс, от которого неявно наследуются все классы в Python.
Один из его полезных методов является
При его вызове на выходе получим что-то такое:
#theory // Just Python
Базовый класс, от которого неявно наследуются все классы в Python.
Один из его полезных методов является
__str__
, который вернет нам строковое представления объекта.При его вызове на выходе получим что-то такое:
<__main__.MyClass object at 0x00893C28>
Но мы всегда можем переопределить метод и вернуть более понятное описание объекта.#theory // Just Python
Как можно применять модуль showballstemmer?
Работали когда-нибудь над поисковиками? Хороший поисковик должен много чего уметь находить по минимальному запросу.
Некоторые используют pymorph2 (первая слишком много потребляет ресурсов), но ведь достаточно определять основу слова, а не начальную форму для нахождения большинства результатов.
Библиотека showballstemmer и занимается тем, что определяет основу слова, что делает поиск более точным. А главное — библиотека мало потребляет, а результат получается намного лучше.
В начале следует импортировать модуль требуемого языка, к примеру вот модули английского, русского и французского соответственно: EnglishStemmer, FrenchStemmer, RussianStemmer
#theory // Just Python
Работали когда-нибудь над поисковиками? Хороший поисковик должен много чего уметь находить по минимальному запросу.
Некоторые используют pymorph2 (первая слишком много потребляет ресурсов), но ведь достаточно определять основу слова, а не начальную форму для нахождения большинства результатов.
Библиотека showballstemmer и занимается тем, что определяет основу слова, что делает поиск более точным. А главное — библиотека мало потребляет, а результат получается намного лучше.
В начале следует импортировать модуль требуемого языка, к примеру вот модули английского, русского и французского соответственно: EnglishStemmer, FrenchStemmer, RussianStemmer
#theory // Just Python
Пример аннотации типов
Аннотация типов дает возможность проставлять в коде "подсказки" для программиста, не используя комментарии через #
При большом количестве кода бывает, что просто забудешь какой тип должна принять / вернуть функция. Для этого и можно воспользоваться этой полезной фичей
А еще можно воспользоваться модулем mypy, чтобы находить ошибки несоответствия типов в коде
#theory // Just Python
Аннотация типов дает возможность проставлять в коде "подсказки" для программиста, не используя комментарии через #
При большом количестве кода бывает, что просто забудешь какой тип должна принять / вернуть функция. Для этого и можно воспользоваться этой полезной фичей
А еще можно воспользоваться модулем mypy, чтобы находить ошибки несоответствия типов в коде
#theory // Just Python
Чтобы начать карьеру в анализе данных, нужно выбрать направление. А для этого — как-то отличить друг от друга аналитиков данных, системных, продуктовых и бизнес-аналитиков, инженеров данных и специалистов по Data Science.
Яндекс Практикум запускает бесплатный курс, который поможет это сделать. Расскажем, чем занимаются разные аналитики, сколько они зарабатывают и как стать одним или одной из них.
Курс будет полезен, если
→ у вас нет опыта, но хочется работать в анализе данных;
→ хотите сменить профессию, но не знаете, с чего начать.
После курса можно будет пройти бесплатную вводную часть о профессии, которая понравилась. Там вы решите первые практические задачи настоящих аналитиков.
Начините путь в анализ данных вместе с Практикумом
Яндекс Практикум запускает бесплатный курс, который поможет это сделать. Расскажем, чем занимаются разные аналитики, сколько они зарабатывают и как стать одним или одной из них.
Курс будет полезен, если
→ у вас нет опыта, но хочется работать в анализе данных;
→ хотите сменить профессию, но не знаете, с чего начать.
После курса можно будет пройти бесплатную вводную часть о профессии, которая понравилась. Там вы решите первые практические задачи настоящих аналитиков.
Начините путь в анализ данных вместе с Практикумом
Базы Данных
Хранить данные нужно всем. Обычно при работе программы все хранится в оперативной памяти (ОЗУ), но при перезапуске все стирается. И для запоминания информацию записывают на жесткий диск. Это и есть База Данных.
Самая популярная База Данных - текстовый файл с записанными значениями. И правда очень удобно. Достаточно открыть файл и прочитать, что там лежит, особенно, если мы знаем какая строка сему соответствует.
Еще информацию которая меняется от программы к программе можно записать в отдельный Python файл. Так нам даже не придется его открывать.
#theory // Just Python
Хранить данные нужно всем. Обычно при работе программы все хранится в оперативной памяти (ОЗУ), но при перезапуске все стирается. И для запоминания информацию записывают на жесткий диск. Это и есть База Данных.
Самая популярная База Данных - текстовый файл с записанными значениями. И правда очень удобно. Достаточно открыть файл и прочитать, что там лежит, особенно, если мы знаем какая строка сему соответствует.
Еще информацию которая меняется от программы к программе можно записать в отдельный Python файл. Так нам даже не придется его открывать.
#theory // Just Python
Использование функции sum()
Как бы вы решили задачу получения суммы элементов списка без обхода элементов в цикле?
Это можно сделать с помощью стандартной функции sum().
Cинтакс функции sum():
iterable - итерируемые типы (list ,dict, tuple, и.т.д.)
start - (необязательно) значение этого параметра прибавляется к уже готовой сумме элементов iterable. По умолчанию значение этого параметра 0.
Возвращаемое значение из sum():
sum() возвращает сумму start и элементов всех последующих элементов.
#theory // Just Python
Как бы вы решили задачу получения суммы элементов списка без обхода элементов в цикле?
Это можно сделать с помощью стандартной функции sum().
Cинтакс функции sum():
start)
Параметры sum():iterable - итерируемые типы (list ,dict, tuple, и.т.д.)
start - (необязательно) значение этого параметра прибавляется к уже готовой сумме элементов iterable. По умолчанию значение этого параметра 0.
Возвращаемое значение из sum():
sum() возвращает сумму start и элементов всех последующих элементов.
#theory // Just Python
Методы list в Python
Во время собеседования на вакансию
python-разработчика очень часто звучат вопросы про списки и их методы.
Мы собрали для вас часть этих методов.
1. append() - добавляет элемент в конец списка.
2. clear() - удаляет все элементы из списка
3. copy() - делает поверхностную копию списка. Почему нужно пользоваться именно этим методом, а не присваиванием мы разбирали в другой статье.
4. count() - считает, сколько раз в списке встречается переданный аргумент.
#theory // Just Python
Во время собеседования на вакансию
python-разработчика очень часто звучат вопросы про списки и их методы.
Мы собрали для вас часть этих методов.
1. append() - добавляет элемент в конец списка.
2. clear() - удаляет все элементы из списка
3. copy() - делает поверхностную копию списка. Почему нужно пользоваться именно этим методом, а не присваиванием мы разбирали в другой статье.
4. count() - считает, сколько раз в списке встречается переданный аргумент.
#theory // Just Python
Как использовать умное логгирование исключений с exc_info=True
Когда ловишь исключение и хочешь залоггировать стек, многие забывают важный параметр.
Итог
Добавляй exc_info=True к логгированию исключений — получишь полный стек и не потеряешь важные детали при отладке.
#theory // Just Python
Когда ловишь исключение и хочешь залоггировать стек, многие забывают важный параметр.
Итог
Добавляй exc_info=True к логгированию исключений — получишь полный стек и не потеряешь важные детали при отладке.
#theory // Just Python
Переопределение стандартного поведения функций через декоратор
Иногда хочется обернуть функцию, чтобы автоматически логировать её вызов или измерять время исполнения. Это удобно делать через декоратор.
Итог
Декораторы позволяют добавлять поведение к функциям, не изменяя их напрямую. Это мощный инструмент для логирования, кэширования, авторизации и прочих нужд.
#theory // Just Python
Иногда хочется обернуть функцию, чтобы автоматически логировать её вызов или измерять время исполнения. Это удобно делать через декоратор.
Итог
Декораторы позволяют добавлять поведение к функциям, не изменяя их напрямую. Это мощный инструмент для логирования, кэширования, авторизации и прочих нужд.
#theory // Just Python
Как элегантно "перевернуть" словарь
Иногда нужно поменять местами ключи и значения в словаре. Это можно сделать в одну строчку с помощью генератора словаря.
Итог:
Инвертирование словаря — это просто и читаемо с генератором. Но помни: значения должны быть уникальны и хэшируемы, чтобы не потерять данные!
#theory // Just Python
Иногда нужно поменять местами ключи и значения в словаре. Это можно сделать в одну строчку с помощью генератора словаря.
Итог:
Инвертирование словаря — это просто и читаемо с генератором. Но помни: значения должны быть уникальны и хэшируемы, чтобы не потерять данные!
#theory // Just Python