⚡️ Что нового в python 3.10
4 октября 2021 года вышла новая версия python, с которой мы уже поигрались и готовы рассказать о новых фичах.
Первое, что нам понравилось, это добавление чего-то похожего на switch/case, как в других языках.
Заметно улучшена производительность. Например,
Улучшена работа с типами. Теперь, как видно из примера, не нужно импортировать typing, достаточно воспользоваться оператором объединения типов.
Если вам стало интересно, можете почитать эту новость.
#теория
4 октября 2021 года вышла новая версия python, с которой мы уже поигрались и готовы рассказать о новых фичах.
Первое, что нам понравилось, это добавление чего-то похожего на switch/case, как в других языках.
Заметно улучшена производительность. Например,
str()
, bytes()
, bytearray()
стали приблизительно на 30% быстрее.Улучшена работа с типами. Теперь, как видно из примера, не нужно импортировать typing, достаточно воспользоваться оператором объединения типов.
Если вам стало интересно, можете почитать эту новость.
#теория
Что выведет код выше?
Anonymous Quiz
29%
True True
24%
False False
28%
True False
7%
False True
11%
Узнать ответ
Как освоить Python и применять его в аналитике данных
Python — самый популярный язык программирования среди аналитиков. Это простой и универсальный инструмент, который позволяет решать любые аналитические задачи, автоматизировать рутинную работу, обрабатывать большие объёмы информации без администрирования и баз данных.
На открытом занятии Нетологии «Знакомство с Python для анализа данных» вы узнаете, какими преимуществами относительно других языков обладает Python в сфере аналитики, какие аналитические задачи он помогает решать, как его освоить и сколько времени это займёт.
Python — самый популярный язык программирования среди аналитиков. Это простой и универсальный инструмент, который позволяет решать любые аналитические задачи, автоматизировать рутинную работу, обрабатывать большие объёмы информации без администрирования и баз данных.
На открытом занятии Нетологии «Знакомство с Python для анализа данных» вы узнаете, какими преимуществами относительно других языков обладает Python в сфере аналитики, какие аналитические задачи он помогает решать, как его освоить и сколько времени это займёт.
⚡️ Три помощника при работе с циклами
Эти три встроенные функции упростят вам работу с итерируемыми объектами.
Если вы что-то не поняли, то можете посетить документацию: enumerate, zip и reversed.
#теория
Эти три встроенные функции упростят вам работу с итерируемыми объектами.
enumerate(iter, start=0)
— проходится по итератору и возвращает кортеж (индекс, значение). Если задать второй параметр, то индекс сместиться на start единиц.zip(a, b, c...)
— параллельно проходит по всем объектам, возвращая по элементу с каждого. reversed(obj)
— просто переворачивает obj, иначе выдаёт ошибку.Если вы что-то не поняли, то можете посетить документацию: enumerate, zip и reversed.
#теория
⚡️ Задачка с собеседования | #Medium
Условие:
В этот раз вам нужно название переменных из других стилей перевести в camel case.
Примеры:
to_camel('python_community_ru') -> 'pythonCommunityRu'
to_camel('Python-community-Ru') -> 'PythonCommunityRu'
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
Условие:
В этот раз вам нужно название переменных из других стилей перевести в camel case.
Примеры:
to_camel('python_community_ru') -> 'pythonCommunityRu'
to_camel('Python-community-Ru') -> 'PythonCommunityRu'
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
⚡️ Хеширование
Хеширование — превращение строки какой-то длинны в набор байтов фиксированной длины. Все хеш-функции хранятся в модуле hashlib.
Используется оно для сравнения больших файлов при загрузке, иногда для хранения паролей (чего делать не стоит) и ещё много для чего.
Первым делом нам стоит создать hash-объект. После — добавляем в него данные с помощью
Если вам стало интересно, то стоит посетить документацию.
#миниурок #ITPython
Хеширование — превращение строки какой-то длинны в набор байтов фиксированной длины. Все хеш-функции хранятся в модуле hashlib.
Используется оно для сравнения больших файлов при загрузке, иногда для хранения паролей (чего делать не стоит) и ещё много для чего.
Первым делом нам стоит создать hash-объект. После — добавляем в него данные с помощью
update(byte_data)
, и получаем хеш с помощью digest()
или hexdigest()
.Если вам стало интересно, то стоит посетить документацию.
#миниурок #ITPython
⚡️ Кодировка base64
base64 — система, переводящая набор байтов в строку состоящую только из A-Z, a-z, 0-9, +, /.
Появилась она очень давно, ещё когда не решили, сколько бит должно быть в одном байте. Решение принять 8 бит за 1 байт сделало неприятно программам, которые считали байт за 6 или 7 бит.
Сообщения обрезались, поскольку последний бит не учитывался, но с этим помог справиться base64, который использовал 2^6 (64) символа.
Сейчас же это активно используется в почте и для передачи бинарных файлов. Вы, наверное, могли замечать, что код изображения на странице сохранён в виде этого формата.
Для работы с ней в python существует модуль base64 и методы
#миниурок #base64
base64 — система, переводящая набор байтов в строку состоящую только из A-Z, a-z, 0-9, +, /.
Появилась она очень давно, ещё когда не решили, сколько бит должно быть в одном байте. Решение принять 8 бит за 1 байт сделало неприятно программам, которые считали байт за 6 или 7 бит.
Сообщения обрезались, поскольку последний бит не учитывался, но с этим помог справиться base64, который использовал 2^6 (64) символа.
Сейчас же это активно используется в почте и для передачи бинарных файлов. Вы, наверное, могли замечать, что код изображения на странице сохранён в виде этого формата.
Для работы с ней в python существует модуль base64 и методы
b64encode(s)
, b64decode(s)
для кодировки и расшифровывания.#миниурок #base64
⚡️ Задачка с собеседования | #Medium
Условие:
Вам необходимо превратить целое число в ip-адрес.
Примеры:
int_to_ip(32) -> '0.0.0.32'
int_to_ip(0) -> '0.0.0.0'
int_to_ip(2149583361) -> '128.32.10.1'
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
Условие:
Вам необходимо превратить целое число в ip-адрес.
Примеры:
int_to_ip(32) -> '0.0.0.32'
int_to_ip(0) -> '0.0.0.0'
int_to_ip(2149583361) -> '128.32.10.1'
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
⚡️ Планировщик событий
В python есть классный модуль — sched, внутри которого реализован простой планировщик событий.
Первым делом, создаём класс
После — добавляем события с помощью
И, что-бы всё начало работать, вызываем
Кроме всего этого, модуль может работать в многопоточном режиме. Об этом вы можете прочитать в документации.
#миниурок #sched
В python есть классный модуль — sched, внутри которого реализован простой планировщик событий.
Первым делом, создаём класс
scheduler(timefunc, delayfunc)
, где timefunc — функция для измерения времени, а delayfunc — функция для ожидания.После — добавляем события с помощью
scheduler.enter(delay, priority, func)
. Также мы можем передать argument
и kwargs
, таким образом отправив что-то функции.И, что-бы всё начало работать, вызываем
run()
.Кроме всего этого, модуль может работать в многопоточном режиме. Об этом вы можете прочитать в документации.
#миниурок #sched
Что выведет код выше?
Anonymous Quiz
26%
'hello'
9%
''
28%
Ошибку, нельзя задать атрибут
25%
Ошибку, атрибута a не существует
13%
Узнать ответ
⚡️ Управляем мышкой и клавиатурой
Для решения этой задачи придумали pyautogui, позволяющий управлять компьютером прямо из Python.
Установка:
Если вам стало интересно, то советую ознакомится с cheat sheet по этой теме.
#миниурок #pyautogui
Для решения этой задачи придумали pyautogui, позволяющий управлять компьютером прямо из Python.
Установка:
pip install pyautogui
pyautogui.position()
— позволяет узнать местоположения мышки на экране, в то время как pyautogui.size()
возвращает размер экрана.pyautogui.click(x, y)
— нажимает левой кнопкой мыши в позиции x, y.pyautogui.typewrite(text)
— печатает text на клавиатуре, а hotkey('ctrl', 'c')
нажимает на горячие клавиши.Если вам стало интересно, то советую ознакомится с cheat sheet по этой теме.
#миниурок #pyautogui
⚡️ Задачка с собеседования | #Medium
Условие:
Вам сказали сделать американские горки. Парк закупил несколько модулей с разной высотой. Нужно их расположить так, что бы суммарный перепад высот был максимальным. Высчитывается по формуле: |e1 – e2| + |e2 – e3| + |e(n-1) - en|
Примеры:
calculate([3, 1, 7, 5, 9]) -> 22 # [3, 9, 1, 7, 5]
calculate([1, 6, 13, 9, 3, 2]) -> 40
calculate([2, 3, 4]) -> 3
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
Условие:
Вам сказали сделать американские горки. Парк закупил несколько модулей с разной высотой. Нужно их расположить так, что бы суммарный перепад высот был максимальным. Высчитывается по формуле: |e1 – e2| + |e2 – e3| + |e(n-1) - en|
Примеры:
calculate([3, 1, 7, 5, 9]) -> 22 # [3, 9, 1, 7, 5]
calculate([1, 6, 13, 9, 3, 2]) -> 40
calculate([2, 3, 4]) -> 3
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
⚡️ Загружаем видео с ютуб
youtube-dl — интересный проект с открытым исходным кодом, позволяющий загружать видео с ютуба и других сервисов.
Устнаовка:
В python же просто импортируется модуль и создаётся класс для работы.
Если вам стало интересно, то рекомендуем посетить документацию.
#миниурок #youtube
youtube-dl — интересный проект с открытым исходным кодом, позволяющий загружать видео с ютуба и других сервисов.
Устнаовка:
pip install youtube-dl
Пользоваться утилитой можно из терминала с помощью команды youtube-dl url
.В python же просто импортируется модуль и создаётся класс для работы.
Если вам стало интересно, то рекомендуем посетить документацию.
#миниурок #youtube