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

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

Работаем с @Tgpodbor_official

Ссылка РНК: https://clck.ru/3Ghwjd
加入频道
Логические значения чисел

В 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) с заполнением. Выравнивание по центру (^).

Документация класса
Pyhton для игр ч1

В цикле постов, поглядим что может питон в контексте видеоигр.

1. PyGame.

Open-source библиотека для разработки игр. Лидер поисковых выдачей. Под капотом SDL. Разработчики жалуются на баги и в целом устаревшие технологии. Для старта — хороший выбор.

2. Arcade.

Библиотека разработки игр, легкая в эксплуатации, использует актуальные технологии. Великолепная документация.

3. PyKyra.

Крайне производительный фреймворков для игр. Использует SDL и Kyra engine. Поддерживает MPEG, MP3. Второй по популярности фреймворк.

Для использования гуглим названия.
Pyhton для игр ч2

Продолжаем изучать возможности Python для игр.

3. Pyglet

Кроссплатформенная, open-source мультимедиа библиотека. Используется для разработки игр и других богатых на визуал приложений. Поддерживает Windows, Mac OS X и Linux.

4. Panda3D.

Полноценный 3D движок для игр, визуализаций, симуляций. Отрытый исходный код и абсолютно бесплатный. Использует Pyhton, как скриптовый язык разработки.

5. Python-Ogre.

Это полноценное управление мощным движком OGRE 3D с помощью библиотеки для Python. Движок славится кроссплатформенностью, скоростью и гибкостью. В коробке есть система сборки пользовательского интерфейса. Движок написан на C++, а вы будете использовать его программируя на Python.

Итого

Простое для старта — PyGame, Arcade
Посложнее после старта — PyKyra, Pyglet
Серьезный 3D проект — Python-Ogre, Panda3D.
Продвинутая итерация

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

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

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

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

Для базовой загрузки страницы из интернета можем воспользоваться встроенной библиотекой urllib.requests.

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

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

Полезно в любом проекте. Однако некоторые функции работают не со всеми операционными системами.
Знакомство с BeatifulSoup

BeatifulSoup - библиотека предназначенная для парсинга html и xml файлов. В комплекте все, что необходимо для парсинга нужных элементов. Используется в промышленных масшатабах. Умеет проходиться по дереву, парсить группы элементов.

В примере, парсим html документ. С самым простым содержимым.