Разъяснивший Python
8.17K subscribers
2.43K photos
40 videos
30 files
2.28K links
Твой проводник в омут Python'а

Ссылка: @Portal_v_IT

Сотрудничество: @oleginc, @tatiana_inc

Канал на бирже: https://telega.in/c/python_pssss
Download Telegram
Шифрование встроенными средствами

Встроенная библиотека hashlib позволяет осуществлять шифрование различными алгоритмами.

Библиотека позволяет покрыть базовые потребности в шифровании. Для продвинутого шифрования нужен более серьезный функционал.

Разъяснивший Python
👎1
Продвинутая итерация

Итерация с помощью функции for может быть куда шире, чем может показаться.

Функция enumerate() перебирает элементы итерируемого объекта с автоматической индексацией. Комбинируем с for — получаем отличный способ разобрать список.

Разъяснивший Python
👍2😐1
Объединение списка строк в одну строку

Метод .join() объединяет элементы списка в одну строку, используя заданный разделитель (в примере — пробел " ").
Плюсы: Быстрее и эффективнее, чем перебор в цикле
Гибкость: можно выбрать любой разделитель (например, ",".join() для CSV)

Осторожно: Все элементы списка должны быть строками, иначе будет ошибка.

Разъяснивший Python
Формируем среду вывода

Часто приложение подразумевает свою систему вывода. Мы знаем, что наше приложение работает с именем и возрастом человека. У нас есть некое подобие базы данных в виде списка с данными. Удобно иметь свою функцию красивого вывода.

Функция format() позволяет также использовать позиционное форматирование, устанавливать порядок записи чисел с плавающей запятой, сокращения.

{:^6} Означает что от первого аргумента будет отступ (6) с заполнением. Выравнивание по центру (^).

Разъяснивший Python
Продвинутое использование кортежей

С помощью кортежей в Pyhton реализовано множественное присваивание.

Кортежи довольно полезный инструмент. Благодаря им в Python возможно поменять местами значения переменных самым простым способом.

a,b = b,a

Для расширенной распаковки кортежа в переменные указываем * перед переменной - в нее распаковывается часть кортежа как список.

Разъяснивший Python
Инфляция в России вышла на целевой уровень, заявил первый зампред Сбера Александр Ведяхин в рамках ПМЭФ. По его словам, за последнюю неделю прирост цен составил всего 0,03%, что в пересчете на год означает 4–5%. Это открывает возможности для снижения ключевой ставки, на что рассчитывают и банки, и бизнес. Ведяхин также отметил, что курс рубля переоценен — при текущих макроусловиях он должен находиться в диапазоне 90–95 за доллар. На отклонение влияют сокращение валютного рынка, логистические трудности и бюджетное правило.
💩4
Безопасное удаление ключа из словаря

Обычно при удалении ключа из словаря с del можно случайно получить KeyError, если ключа нет. А вот dict.pop() с дефолтным значением — безопаснее и удобнее!

Итог:
Используй dict.pop(key, default) — безопасный способ удалить ключ и получить значение, если оно нужно. Уберегаешься от KeyError и пишешь устойчивый код.

Разъяснивший Python
👍1
Путешествие во времени

Поддержка Python версии 2 не закончена и не планирует заканчиваться. Используя вторую версию языка можно использовать функционал новой версии, как будто перемещаясь в будущее.

from future import импортирует функционал будущих версий как модули.

Попробуйте from future import braces, это пасхалка от создателей.

Разъяснивший Python
Внутренности объектов

Для понимания устройства встроенных модулей, объектов, библиотек в Python есть инструмент, позволяющий понять, какие функции и поля содержит объект.

Функция dir() показывает все атрибуты объекта. Удобно использовать в интерпретаторе в процессе обучения.

Разъяснивший Python
Прерывание цикла for с else

Мало кто знает, но for и while в Python могут иметь else. Этот else сработает только если цикл не был прерван через break. Удобно, когда нужно узнать, завершился ли цикл «естественно».

Итог:
Конструкция for/else помогает элегантно отличить «успешный» проход по циклу от прерывания. Полезно при поиске, проверках и валидации!

Разъяснивший Python
Продвинутая работа со списками

При работе со списками крайне полезно знать как правильно формировать срезы списка. В приложениях, активно использующих группы данных - срезы незаменимый инструмент.

В общей форме формирования среза выглядит следующим образом:

list[start:end:step]

Комбинации параметров помогут достичь необходимого результата.

Разъяснивший Python
This media is not supported in your browser
VIEW IN TELEGRAM
В Циндао открыли пивную биржу

Цены меняются в реальном времени на плюс-минус 10 процентов.

🔥 — Требуем IPO в России

😁 — Я, получается, инвестор?

🗿 — С такими колебаниями только трейдить
🗿2😁1
Преобразование чисел в булевый тип данных

В Python при преобразовании чисел к логическим значениям все числа кроме нуля, в том числе и отрицательные - имеют значения True. 0 имеет значение False. Python позволяет проводить логические операции and, or, not над числами.

Функция bool() преобразует объект в логический. Использовать ее можно с числами.

Логические операции с числами работают согласно таблицам истинности операторов.

Разъяснивший Python
setdefault() для упрощения работы со словарями

Иногда нужно добавлять значения в словарь списков. Можно проверять наличие ключа вручную, а можно использовать setdefault().

Итог:
Метод setdefault() избавляет от лишней проверки ключей и помогает лаконично группировать данные в словарях.

Разъяснивший Python
Директива repr

Для установки корректного официального определения класса используется метод repr(), который определяет строковое обозначение класса для программиста.

По умолчанию оно представляет собой название класса и адрес в памяти.

Используется для отладки приложения, описание даст информации больше, чем имя и адрес в памяти.

Разъяснивший Python
Кортежи в Python

Кортеж - неизменяемый список, группа объектов.

Преимущества перед списками:

- Защита от изменений
- Размер меньше
- Скорость работы

Для создания кортежа используется функция tuple(), использование функции с интегрируемым объектом поместит все его элементы в кортеж.

Кортежи очень полезны, когда нужно передать группу элементов и не нагружать скрипт.

Разъяснивший Python
Как элегантно "перевернуть" словарь

Иногда нужно поменять местами ключи и значения в словаре. Это можно сделать в одну строчку с помощью генератора словаря.

Итог:
Инвертирование словаря — это просто и читаемо с генератором. Но помни: значения должны быть уникальны и хэшируемы, чтобы не потерять данные!

Разъяснивший Python
Маркетинг за 4 дня: бесплатно!

Зарплата начинающего маркетолога от 70 000₽, а стоимость обучения на профессию в онлайн-школах основам от 120 000 до 250 000 рублей.

Сейчас Skillbox дарит мини-курс на 4 дня: попробуйте себя в интернет-маркетинге, SMM, таргетинге и копирайтинге. Только практика, полезные чек-листы и доступ к материалам навсегда.

Переходите по ссылке и забирайте курс по маркетингу. Акция продлится до 19 мая: https://go.avnxt.site/8b2d902d157e1120?erid=2VfnxxcSezk&m=1
Применение аннотации типов

Python - язык с динамической типизацией. Это может быть как преимуществом так и недостатком. Для четкого определения типа переменных существуют аннотации, которые позволят явно указать тип данных объекта или тип данных возвращаемых функцией.

У аннотаций следующий варианты синтаксиса:

1. имя_переменной : тип_данных
2. имя_переменной : тип_данных = значение
3. def my_function(arg: тип_данных) -> тип_возвращаемого_значения

Разъяснивший Python
🥰2
Передаем содержимое словаря

Две звездочки перед объектом словаря позволяют передать содержимое словаря как аргументы. Где ключи словаря - имя аргумента, а значения передаются в функцию.

Это полезно, при обработке словарей, для написания функций оберток, передающих все полученные значения.

Обе конструкции print в конце примера выполняют одинаковые действия.

Разъяснивший Python