Python обучающий
62.3K subscribers
813 photos
7 videos
408 links
Здесь есть всё, чтобы упростить изучение Python. Без воды и сложных терминов.

Сотрудничество: @bateman24, @justcage

Работаем с @Tgpodbor_official

Ссылка РНК: https://clck.ru/3Ghwjd
加入频道
Передаем содержимое словаря

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

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

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

Функция all() возвращает True если список пустой или все его элементы истинны.

Функция any() возвращает True если хотя бы один из элементов списка истинный.

Функционал довольно простой и примитивный, но в скольких ситуациях может облегчить жизнь! В купе с for и другими конструкциями очень помогает сократить некоторые громоздкие функции, а также быстро проверить список на различные параметры.
Аннотация типов

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

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

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

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

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

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

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

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

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

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

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

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

Конструкция try except позволяет делать исключения для тех функций, которые могу привести к сбою.

try:
уязвимая функция

except:
что делаем если вызвала ошибку
Логические значения чисел

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

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

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

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

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

list[start:end:step]

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

Нужда в написании и отладке скриптов в браузере, может возникнуть по ряду причин. Совместная разработка, работа на машине без stand-alone приложения, необходимость быстро проверить интересующую конструкцию.

Сайты для запуска и написания Python-скриптов

programiz
Простой интерпретатор python, функционал примитивный, есть ночная тема.

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

replit.com
Умеет все вышеперечисленное. Ориентирован на командную разработку, предоставляют хостинг. В бесплатном плане 500mb оперативной и памяти хранения.

Последним пользуюсь регулярно, из всех реже всего зависает и лагает, есть возможность выбрать версию Python.

Однозначно рекомендую.
Множества

Множество - группа случайных, не повторяющихся элементов. Использует тот же литерал, что и словарь, но пустое множество нельзя создать используя литерал. Поддерживают операции над множествами.

Функция set() — формирует множество. При создании удаляются все повторяющиеся элементы.
Функция frozenset() — формирует неизменяемое множество.
Внутренности объектов

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

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

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

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

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

Разнообразить вывод, ввести веселый лог. Работа с чатами и создание модулей мессенджера, применение эмоджи гораздо шире.

Именно для это существует библиотека emoji, разбавляющая различный текст.

Установка: pip install emoji
​​Как из десятков IT-профессий выбрать ту самую, которая подойдет именно мне? А если я гуманитарий? С чего начать? Мне не поздно менять профессию?

Бесплатный профориентационный проект «IT-рентген» от SkillFactory развеет все сомнения и покажет, подходит ли вам сфера IT, а если да — какую профессию лучше выбрать с учетом ваших интересов, знаний и опыта. На пути к новой профессии вам предстоит сделать 4 простых, но важных шага. Готовы?

Начните с прохождения теста — а дальше ваш путь пойдет через профориентационный практикум, прямые эфиры и консультации — и приведет вас к новой IT-профессии мечты! Вы познакомитесь с разными представителями индустрии, узнаете их истории и рекомендации, и получите ответы на вопросы.

❗️Пройти тест "Какой путь в IT - ваш"https://clc.am/04WbZw
Продвинутые кортежи

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

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

a,b = b,a

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

Пайтон получил широкое распространение благодаря своей простоте, гибкости, производительности. Pyhton тяжело назвать исключительно скриптовым языком, но назвать его языком для написания компилируемых серьезных приложений тоже сложно. Он находится где-то между, что и привело его к web-приложениям.

Pyhton имеет ряд библиотек существенно расширяющих его возможности. Разработка десктоп-приложений с помощью библиотеки Tkinter. Серверные части приложений, так же используют Python. Некоторые микроконтроллеры использую Python как скриптовый язык взаимодействия с железом.

И конечно же — data-science. Пайтон очень часто называют продвинутым калькулятором, а куча математических библиотек превратило его в одного из самых популярных игроков на рынке нейронных сетей.
Объединение значений списка

Есть задача, объединить несколько списков разного размера в один. В голову сразу приходит цикл, который проходит по всем элементам в зависимости от длинны очередного списка. А затем каждое полученное значение записывает в результирующий список.

А что если в одну строчку?
Встроенная функция sum(), позволяет выполнить эту задачу максимально быстро для программиста.
Знакомство с Django

Каждый человек, изучающий Python не раз слышал про этот фреймворк. Ни для кого не секрет, что фреймворк является одним из лидеров на рынке. Лидер в компаниях и лидер в необходимых знаниях в резюме.

Почему Django

— Ориентированность на быструю разработку
— Приверженец DRY и rapid development
— Контроль версий баз данных
— Поддержка серверов
— Маршрутизация URL

Конкурентные преимущества

1. Масса библиотек.
Не нужно изобретать кучу велосипедов, большинство стандартных решений уже написаны.

2. Масштаб.
Фреймворк позволяет масштабировать проект по мере необходимости и развития.

3. Сообщество.
У Джанго огромное комьюнити и документация, решать возникшие вопросы как никогда легко.
Составной вывод

Простой способ — сложение (конкатенация) строк. Хорошо с одной переменной в строке, а если их больше — читается с трудом.

print('Hello ' + name + ' — ' + str(age) + ' y.o.')

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

print('Hello {} — {} y.o.'.format(name, age))

Python последовательно проставляет номера для скобок и передает им значения переменных, последовательно указанных в аргументе.
Формируем среду вывода

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

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

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

Документация класса