Подсчет наиболее часто встречающихся элементов в итерируемом объекте
Итерируемые (перебираемые) объекты — это коллекция важных структур данных в Python. Например, к ним относятся такие встроенные типы, как строки, списки и словари.
Инструмент Counter из модуля collections очень полезен. В частности, с его помощью можно узнать, какие элементы списка или, скажем, какие символы в строке встречаются чаще всего, и сколько раз.
Три наиболее часто встречающихся буквы в строке helloworld — l (3 раза), o (2 раза) и e (1 раз).
Итерируемые (перебираемые) объекты — это коллекция важных структур данных в Python. Например, к ним относятся такие встроенные типы, как строки, списки и словари.
Инструмент Counter из модуля collections очень полезен. В частности, с его помощью можно узнать, какие элементы списка или, скажем, какие символы в строке встречаются чаще всего, и сколько раз.
Три наиболее часто встречающихся буквы в строке helloworld — l (3 раза), o (2 раза) и e (1 раз).
Подсказки типов | Ожидание типа | Type hinting (Python 3.5+)
Статические языки программирования заставляют Вас указывать тип каждой переменной, который определяет, сколько места переменная займёт в памяти и что с ней можно сделать. Компьютер использует эту информацию, что-бы скомпилировать программу в очень низкоуровневый машинный язык. Статические языки программирования машины понимают быстрее.
Переменные в этих языках не могут изменять свой тип они статичны. Целое число — это целое число, раз и навсегда.
Динамические языки не заставляют Вас определять тип переменных перед тем, как их использовать.
Утиная типизация: «Если это выглядит как утка и крякает как утка, значит это утка».
Спор о том, какое типизирование python лучше — статическое или динамическое — не умолкают и по сей день и у каждого есть свое мнение на этот счет. Это личное дело читателя — когда ему нужно вписывать типы, но мне кажется что вы как минимум должны знать о том, что Python 3 поддерживает подсказки типов.
Статические языки программирования заставляют Вас указывать тип каждой переменной, который определяет, сколько места переменная займёт в памяти и что с ней можно сделать. Компьютер использует эту информацию, что-бы скомпилировать программу в очень низкоуровневый машинный язык. Статические языки программирования машины понимают быстрее.
Переменные в этих языках не могут изменять свой тип они статичны. Целое число — это целое число, раз и навсегда.
Динамические языки не заставляют Вас определять тип переменных перед тем, как их использовать.
Утиная типизация: «Если это выглядит как утка и крякает как утка, значит это утка».
Спор о том, какое типизирование python лучше — статическое или динамическое — не умолкают и по сей день и у каждого есть свое мнение на этот счет. Это личное дело читателя — когда ему нужно вписывать типы, но мне кажется что вы как минимум должны знать о том, что Python 3 поддерживает подсказки типов.
Участвуйте в интенсиве по data science! Познакомьтесь с основами анализа данных и технологиями машинного обучения.
Заполните форму на участие: 🔜 https://clc.to/aJq-mw
С 28 по 30 марта в 21:00 по московскому времени пройдёт онлайн-интенсив. На нём вы:
✔️ поймёте основы практического применения моделей машинного обучения для решения реальных задач;
✔️ разберёте базовые инструменты для анализа и подготовки данных;
✔️ обучите нейросеть распознавать лица и предсказывать курс биткоина;
✔️ решите первую реальную бизнес-задачу.
Присоединяйтесь онлайн!
🎁 При регистрации все участники получат чек-лист с информацией о том, чем занимается специалист по DS, где он может работать, какие знания и навыки ему нужны, а также где новичку можно найти первые проекты. А те, кто дойдёт до конца интенсива, — электронную книгу Пола Доэрти и Джеймса Уилсона «Человек + машина» издательства МИФ. За выполнение практической работы — 10 000 рублей для обучения на образовательной платформе Skillbox!
Заполните форму на участие: 🔜 https://clc.to/aJq-mw
С 28 по 30 марта в 21:00 по московскому времени пройдёт онлайн-интенсив. На нём вы:
✔️ поймёте основы практического применения моделей машинного обучения для решения реальных задач;
✔️ разберёте базовые инструменты для анализа и подготовки данных;
✔️ обучите нейросеть распознавать лица и предсказывать курс биткоина;
✔️ решите первую реальную бизнес-задачу.
Присоединяйтесь онлайн!
🎁 При регистрации все участники получат чек-лист с информацией о том, чем занимается специалист по DS, где он может работать, какие знания и навыки ему нужны, а также где новичку можно найти первые проекты. А те, кто дойдёт до конца интенсива, — электронную книгу Пола Доэрти и Джеймса Уилсона «Человек + машина» издательства МИФ. За выполнение практической работы — 10 000 рублей для обучения на образовательной платформе Skillbox!
Фильтры NEAREST, BILINEAR и BICUBIC в Pillow
Параметр resample можно использовать для указания определенного фильтра, который будет использоваться при поворачивании изображения.
• Image.NEAREST (ближайший сосед / по умолчанию);
• Image.BILINEAR;
• Image.BICUBIC.
С помощью фильтра Image.BICUBIC детали изображения станут более четким, чем в случае использования фильтра по умолчанию Image.NEAREST.
Небольшие различия есть, но у данной картинки они не очень видны. Но, например фильтр Image.BILINEAR сделал картинку более гладкой.
Параметр resample можно использовать для указания определенного фильтра, который будет использоваться при поворачивании изображения.
• Image.NEAREST (ближайший сосед / по умолчанию);
• Image.BILINEAR;
• Image.BICUBIC.
С помощью фильтра Image.BICUBIC детали изображения станут более четким, чем в случае использования фильтра по умолчанию Image.NEAREST.
Небольшие различия есть, но у данной картинки они не очень видны. Но, например фильтр Image.BILINEAR сделал картинку более гладкой.
Чтение содержимого YAML-файла в список словарей
Функция safe_load() используется для преобразования содержимого файла YAML в список словарей Python. Эту функцию также можно использовать для загрузки данных из ненадежных источников.
Давайте напишем код для загрузки содержимого файла YAML (с помощью функции safe_load() ) и вывода загруженного содержимого в консоль.
Функция safe_load() используется для преобразования содержимого файла YAML в список словарей Python. Эту функцию также можно использовать для загрузки данных из ненадежных источников.
Давайте напишем код для загрузки содержимого файла YAML (с помощью функции safe_load() ) и вывода загруженного содержимого в консоль.
Профессия в IT — это независимость и устойчивость.
Когда вы знаете, что ваши навыки востребованы во всем мире, знаете, где искать работу и уверены, что ее найдете.
Все секреты о самой перспективной профессии в IT мы расскажем на бесплатном онлайн-интенсиве по Data Science от SkillFactory 28 марта в 19:00. Вы узнаете подходит ли вам эта сфера, как войти в профессию с любым опытом, куда расти и сколько можно зарабатывать.
🎁Все онлайн-участники получат мини-курсы по Data Science и аналитическому мышлению.
📌Регистрация — https://clc.to/ZZuiPQ
Когда вы знаете, что ваши навыки востребованы во всем мире, знаете, где искать работу и уверены, что ее найдете.
Все секреты о самой перспективной профессии в IT мы расскажем на бесплатном онлайн-интенсиве по Data Science от SkillFactory 28 марта в 19:00. Вы узнаете подходит ли вам эта сфера, как войти в профессию с любым опытом, куда расти и сколько можно зарабатывать.
🎁Все онлайн-участники получат мини-курсы по Data Science и аналитическому мышлению.
📌Регистрация — https://clc.to/ZZuiPQ
Объединение словарей
Допустим, у вас есть словарь со значениями по умолчанию, и вы хотите обновить его параметры. До Python 3.9 лучшим вариантом было скопировать словарь по умолчанию, а затем использовать метод .update().
Обратите внимание, что порядок имеет значение. В данном случае значение where из params переопределяет значение по умолчанию, как и должно быть.
Допустим, у вас есть словарь со значениями по умолчанию, и вы хотите обновить его параметры. До Python 3.9 лучшим вариантом было скопировать словарь по умолчанию, а затем использовать метод .update().
Обратите внимание, что порядок имеет значение. В данном случае значение where из params переопределяет значение по умолчанию, как и должно быть.
Простая обрезка изображения в Pillow
Обозначим область обрезки изображения с помощью кортежа box=(left, upper, right, lower).
Верхней левой координате соответствует (x, y) = (left, upper), а нижней правой — (x, y) = (right, lower). Область, которую нужно обрезать — left <= x <right и upper <= y <lower, а пиксели x = right и y = lower не включаются.
Не забудьте, что box используется вместе со скобками ().
Обозначим область обрезки изображения с помощью кортежа box=(left, upper, right, lower).
Верхней левой координате соответствует (x, y) = (left, upper), а нижней правой — (x, y) = (right, lower). Область, которую нужно обрезать — left <= x <right и upper <= y <lower, а пиксели x = right и y = lower не включаются.
Не забудьте, что box используется вместе со скобками ().
С 4 по 9 апреля Skillbox проводит серию бесплатных вебинаров по программированию!
Вы познакомитесь с востребованными в 2022 году и прибыльными IT-профессиями,
попробуете себя в разных направлениях на практике. Пополните портфолио и получите электронный сертификат, который усилит резюме и подтвердит ваши знания.
Регистрируйтесь: https://clc.to/LfpFkw.
На онлайн-конференции вы изучите:👇
✔️ программирование на Python;
✔️ Java-разработку;
✔️ 1C-разработку;
✔️ data science.
🔥 Пообщаетесь в прямом эфире с ведущими разработчиками и директорами Сбербанка, SymbioWay и SlavVer. Спикеры поделятся актуальными знаниями и расскажут, как за 3 месяца начать зарабатывать от 120 тысяч рублей.
🎁 Зарегистрируйтесь и получите подборку полезных материалов по программированию. Тем, кто будет онлайн на вебинарах, — дополнительная скидка 10 000 рублей на любой курс Skillbox. После конференции каждый получит подарки — безлимитный доступ к платформе изучения английского языка на 3 месяца и полезную литературу издательства МИФ.
Присоединяйтесь!
Вы познакомитесь с востребованными в 2022 году и прибыльными IT-профессиями,
попробуете себя в разных направлениях на практике. Пополните портфолио и получите электронный сертификат, который усилит резюме и подтвердит ваши знания.
Регистрируйтесь: https://clc.to/LfpFkw.
На онлайн-конференции вы изучите:👇
✔️ программирование на Python;
✔️ Java-разработку;
✔️ 1C-разработку;
✔️ data science.
🔥 Пообщаетесь в прямом эфире с ведущими разработчиками и директорами Сбербанка, SymbioWay и SlavVer. Спикеры поделятся актуальными знаниями и расскажут, как за 3 месяца начать зарабатывать от 120 тысяч рублей.
🎁 Зарегистрируйтесь и получите подборку полезных материалов по программированию. Тем, кто будет онлайн на вебинарах, — дополнительная скидка 10 000 рублей на любой курс Skillbox. После конференции каждый получит подарки — безлимитный доступ к платформе изучения английского языка на 3 месяца и полезную литературу издательства МИФ.
Присоединяйтесь!
Примеры использования модуля os в Python
os.chdir() и os.getcwd()
Функция os.chdir позволяет нам вносить изменения в каталоге, который мы в данный момент используем в сессии. Если вам нужно знать, какой путь вы в данный момент используете, для этой нужно вызвать os.getcwd(). Указанный код демонстрирует нам, что мы открыли директорию по умолчанию в Пайтоне, после запуска данного кода в IDLE. После этого мы изменили папки, при помощи os.chdir().
os.chdir() и os.getcwd()
Функция os.chdir позволяет нам вносить изменения в каталоге, который мы в данный момент используем в сессии. Если вам нужно знать, какой путь вы в данный момент используете, для этой нужно вызвать os.getcwd(). Указанный код демонстрирует нам, что мы открыли директорию по умолчанию в Пайтоне, после запуска данного кода в IDLE. После этого мы изменили папки, при помощи os.chdir().
Начните свой путь в Data Science! Присоединяйтесь к прямым трансляциям с 4 по 6 апреля в 21:00 по московскому времени. В роли спикера выступит руководитель направления по исследованию данных в Сбере с семилетним опытом в программировании — Анастасия Борнева.
🔸Записывайтесь на бесплатный онлайн-интенсив по анализу данных: 👉 https://clc.to/sz0nQw.
Чему вы научитесь:
📎 находить аномалии, выявлять ложные зависимости и выделять главные факторы в моделях данных;
📎 визуализировать и анализировать данные с помощью Python-библиотек;
📎 автоматизировать решение бизнес-задач с помощью искусственного интеллекта и машинного обучения.
🎁 Все участники при регистрации получат чек-лист с информацией о том, чем занимается специалист по DS, где он может работать, какие знания и навыки ему нужны, а также где новичку найти первые проекты. Дошедшие до финала интенсива получат в подарок электронную книгу Пола Доэрти и Джеймса Уилсона «Человек + машина» издательства МИФ. А каждый, кто сдаст практическую работу, — сертификат на 10 тысяч рублей на любой курс образовательной платформы Skillbox.
Присоединяйтесь к прямым эфирам 4–6 апреля в 21:00 по московскому времени!
🔸Записывайтесь на бесплатный онлайн-интенсив по анализу данных: 👉 https://clc.to/sz0nQw.
Чему вы научитесь:
📎 находить аномалии, выявлять ложные зависимости и выделять главные факторы в моделях данных;
📎 визуализировать и анализировать данные с помощью Python-библиотек;
📎 автоматизировать решение бизнес-задач с помощью искусственного интеллекта и машинного обучения.
🎁 Все участники при регистрации получат чек-лист с информацией о том, чем занимается специалист по DS, где он может работать, какие знания и навыки ему нужны, а также где новичку найти первые проекты. Дошедшие до финала интенсива получат в подарок электронную книгу Пола Доэрти и Джеймса Уилсона «Человек + машина» издательства МИФ. А каждый, кто сдаст практическую работу, — сертификат на 10 тысяч рублей на любой курс образовательной платформы Skillbox.
Присоединяйтесь к прямым эфирам 4–6 апреля в 21:00 по московскому времени!
Примеры использования модуля os в Python (ч. 2)
os.path.join
Метод join позволяет вам совместить несколько путей при помощи присвоенного разделителя. К примеру, в Windows, в роли разделителя выступает бэкслэш (косая черта, указывающая назад), однако в Linux функция разделителя присвоена косой черте, указывающей вперед (forward slash). В данном примере мы совместили путь каталога и файла вместе, для получения рабочего пути. Обратите внимание на то, что метод join не указывает на то, какой результат в итоге вышел.
os.path.join
Метод join позволяет вам совместить несколько путей при помощи присвоенного разделителя. К примеру, в Windows, в роли разделителя выступает бэкслэш (косая черта, указывающая назад), однако в Linux функция разделителя присвоена косой черте, указывающей вперед (forward slash). В данном примере мы совместили путь каталога и файла вместе, для получения рабочего пути. Обратите внимание на то, что метод join не указывает на то, какой результат в итоге вышел.
Прокачайте знания SQL и навыки работы с базами данных! Узнайте всё о профессии SQL-разработчика на бесплатном онлайн-интенсиве Skillbox. Подключайтесь к прямым эфирам 7–9 апреля в 21:00 по московскому времени: 👉 https://clc.to/iuar-w.
За 3 дня:
● научитесь работать с базами данных — и получите навык, необходимый каждому программисту;
● поймёте, как оптимизировать рутинные задачи при помощи SQL-запросов;
● прокачаете навыки работы с SQLiteStudio;
● узнаете, как стать более востребованным специалистом.
Спикер интенсива — специалист по анализу данных, сертифицированный SQL-разработчик Microsoft Мкртич Пудеян.
🎉 Все участники получат электронную книгу издательства МИФ. А те, кто сдаст практическую работу, — сертификаты на 10 тысяч рублей на любой курс Skillbox.
Присоединяйтесь!
За 3 дня:
● научитесь работать с базами данных — и получите навык, необходимый каждому программисту;
● поймёте, как оптимизировать рутинные задачи при помощи SQL-запросов;
● прокачаете навыки работы с SQLiteStudio;
● узнаете, как стать более востребованным специалистом.
Спикер интенсива — специалист по анализу данных, сертифицированный SQL-разработчик Microsoft Мкртич Пудеян.
🎉 Все участники получат электронную книгу издательства МИФ. А те, кто сдаст практическую работу, — сертификаты на 10 тысяч рублей на любой курс Skillbox.
Присоединяйтесь!
Оператор except
finally предназначен для определения “действий очистки”. Предложение finally выполняется в любом случае перед тем, как оставить оператор try, произошло ли исключение или нет.
Оператор finally очень прост в использовании. Если вы запустите это код, оно отобразиться и в операторе except и в finally. Весьма просто, не так ли? Теперь вы можете использовать оператор finally, чтобы убрать за собой. Вы можете также вписать код exit в конце оператора finally.
finally предназначен для определения “действий очистки”. Предложение finally выполняется в любом случае перед тем, как оставить оператор try, произошло ли исключение или нет.
Оператор finally очень прост в использовании. Если вы запустите это код, оно отобразиться и в операторе except и в finally. Весьма просто, не так ли? Теперь вы можете использовать оператор finally, чтобы убрать за собой. Вы можете также вписать код exit в конце оператора finally.
Встроенный список
Мы можем использовать обычный список в качестве очереди, но это не очень эффективно с точки зрения производительности. Списки слишком медленные для этой задачи, так как вставка и удаление элемента с начала требует сдвига всех прочих элементов по одному, на это уходит О(n) времени. В связи с этим, я не спешу рекомендовать список в качестве временной очереди в Python
Мы можем использовать обычный список в качестве очереди, но это не очень эффективно с точки зрения производительности. Списки слишком медленные для этой задачи, так как вставка и удаление элемента с начала требует сдвига всех прочих элементов по одному, на это уходит О(n) времени. В связи с этим, я не спешу рекомендовать список в качестве временной очереди в Python
Операции со списками в Python
К спискам можно применить встроенные функции Python, такие как len(), min() и max(), чтобы получить длину списка, наименьший и наибольший элементы соответственно.
Поскольку наш shopping_list содержит только строки, min() возвращает строку, которая шла бы первой, если бы список был упорядочен в алфавитном порядке. max() возвращает строку, которая шла бы последней.
К спискам можно применить встроенные функции Python, такие как len(), min() и max(), чтобы получить длину списка, наименьший и наибольший элементы соответственно.
Поскольку наш shopping_list содержит только строки, min() возвращает строку, которая шла бы первой, если бы список был упорядочен в алфавитном порядке. max() возвращает строку, которая шла бы последней.
Участвуйте в интенсиве по Data Science! Познакомьтесь с основами анализа данных и технологиями машинного обучения.
Заполните форму на участие: 🔜 https://clc.to/9oKAxg.
С 11 по 13 апреля в 21:00 по московскому времени пройдёт онлайн-интенсив. На нём вы:
✔️ поймёте основы практического применения моделей машинного обучения для решения реальных задач;
✔️ разберёте базовые инструменты для анализа и подготовки данных;
✔️ обучите нейросеть распознавать лица и предсказывать курс биткоина;
✔️ решите первую бизнес-задачу.
Присоединяйтесь онлайн!
🎁 При регистрации все участники получат чек-лист с информацией о том, чем занимается специалист по DS, где он может работать, какие знания и навыки ему нужны, а также где новичку найти первые проекты. А те, кто дойдёт до конца интенсива, — электронную книгу Пола Доэрти и Джеймса Уилсона «Человек + машина» издательства МИФ. За выполнение практической работы — сертификат на 10 тысяч рублей для обучения на образовательной платформе Skillbox.
Заполните форму на участие: 🔜 https://clc.to/9oKAxg.
С 11 по 13 апреля в 21:00 по московскому времени пройдёт онлайн-интенсив. На нём вы:
✔️ поймёте основы практического применения моделей машинного обучения для решения реальных задач;
✔️ разберёте базовые инструменты для анализа и подготовки данных;
✔️ обучите нейросеть распознавать лица и предсказывать курс биткоина;
✔️ решите первую бизнес-задачу.
Присоединяйтесь онлайн!
🎁 При регистрации все участники получат чек-лист с информацией о том, чем занимается специалист по DS, где он может работать, какие знания и навыки ему нужны, а также где новичку найти первые проекты. А те, кто дойдёт до конца интенсива, — электронную книгу Пола Доэрти и Джеймса Уилсона «Человек + машина» издательства МИФ. За выполнение практической работы — сертификат на 10 тысяч рублей для обучения на образовательной платформе Skillbox.
Метод items()
Метод items() используется для возврата списка кортежей с парами всех ключей и значений словаря.
Синтаксис:dictionary.items()
Данный метод не принимает никаких аргументов.
Приведем пример использования данной функции.
Объявлен словарь с именем products. Ключи содержат названия продуктов, а значения — их цены. Используем для нашего словаря метод items() и сохраним в другой переменной с именем itemlist, а затем выведем на экран.
Метод items() используется для возврата списка кортежей с парами всех ключей и значений словаря.
Синтаксис:dictionary.items()
Данный метод не принимает никаких аргументов.
Приведем пример использования данной функции.
Объявлен словарь с именем products. Ключи содержат названия продуктов, а значения — их цены. Используем для нашего словаря метод items() и сохраним в другой переменной с именем itemlist, а затем выведем на экран.