Python School
82.2K subscribers
2.42K photos
8 videos
577 links
Уроки по Python, которые упростят вам жизнь. Без идиотских туториалов.

Наши мемы для программистов: @conhum

Сотрудничество - @alivian

Канал сотрудничает с рекламным сервисом @Tgpodbor_official

РКН: clck.ru/3G6pBb
Download Telegram
Просмотр содержимого внешнего файла

Часто вам может понадобиться скопировать в свой код несколько строк кода из внешнего файла. Команда %pycat избавит вас от долгой процедуры извлечения определенных данных из файла и их копирования в другой файл. Она позволяет просматривать содержимое любого файла в любом каталоге.
​​Вы — новичок в программировании или начинающий разработчик? Познакомьтесь с одним из самых популярных и востребованных языков программирования — Python!

Узнайте больше: 👉 https://clc.to/LyngQQ
Этот язык программирования использовали для разработки EVE Online, Battlefield, Sims 4. Его просто изучить, даже если вы никогда раньше не видели строчки кода.

Python универсален. На нём пишут сайты, игры, чат-ботов, нейросети и проводят научные вычисления.


Что вас ждёт:
📌 изучение азов программирования на Python и разбор основных элементов языка;
📌 создание программы-сервера для прослушивания подключений;
📌 разработка интерфейса мессенджера;
📌 работа с библиотеками PyQt, Kivy, wxWidgets, Тkinter.

Спикером будет специалист, который 17 лет работает в области разработки высоконагруженных систем, обработки больших данных и машинного обучения, — Михаил Овчинников.

🎁 Всем, кто зарегистрируется, подарим статью с полезными скриптами на Python. Участвуйте, задавайте вопросы и получите сертификат на 10 000 рублей на любой курс Skillbox.     

Подключайтесь к бесплатному онлайн-интенсиву с 12 по 14 сентября в 21:00 по московскому времени!
Копирование содержимого во внешний файл

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

Вместо того чтобы копировать все и создавать новый файл, вы можете напрямую экспортировать свои данные, добавив команду writefile в ячейку перед кодом.
emoji

Да, серьёзно.

$ pip install emoji

И не делайте вид, что не хотите попробовать
Перечисления enum

Python 3 поддерживает простой способ написания перечислений через класс Enum. Этот класс можно назвать удобным способом инкапсуляции списка констант, чтобы они не были разбросаны по всему коду без структуры.
F-строки

Сложно делать что-либо без строк в Python и чтобы сохранить адекватность, вам нужно иметь структурированный способ работы со строками. Большая часть людей, работающих с Python, предпочитают метод format python.
🐍 Когда мне говорят, что Python слишком простой язык, я показываю канал Python Learning

Здесь я научился:

▪️Превращать текст в голос
▪️Определять локацию по IP
▪️Писать телеграм-ботов
▪️Создавать 3D-игры

Самый необычный канал про Python, подписывайся@Python_per_month
Итерируемые объекты

Иногда нужно работать с файлом, который, как заранее известно, начинается с некоторого числа ненужных строк — вроде строк с комментариями. Для того чтобы пропустить эти строки, можно, снова, прибегнуть к возможностям itertools
Познакомьтесь с профессией 1С-разработчика! Участвуйте в бесплатном онлайн-интенсиве Skillbox с 15 по 17 сентября в 19:00 по московскому времени.

Регистрируйтесь: 👉 https://clc.to/m5p7fA.
Сразу отправим вам на почту чек-лист с пошаговым планом создания базы данных в 1С.

Вы узнаете:

🖱 кто такой разработчик 1С и почему он востребован на рынке;
🖱 какие soft и hard skills нужны в этой профессии;
🖱 что такое платформа 1С и каковы её основные объекты;
🖱 как создавать проводки, документы, отчёты и автоматизировать процессы.

К концу интенсива создадите проект — базу для торгового предприятия.

🎁 Всем участникам подарим электронную книгу Пола Доэрти и Джеймса Уилсона «Человек + машина» издательства МИФ. Участвуйте, задавайте вопросы и получите сертификат на 10 000 рублей на любой курс Skillbox.
Получение срезов итераторов

Воспользовавшись методом itertools.islice можно создать объект islice, который представляет собой итератор, выдающий нужные элементы. Однако здесь важно отметить то, что эта конструкция использует все элементы генератора вплоть до начала среза и все элементы в объекте islice.
Срезы итераторов

Если вы попытаетесь получить срез (slice) итератора, то столкнётесь с ошибкой TypeError, сообщающей о том, что на объект-генератор нельзя оформить подписку. Однако эта проблема поддаётся решению
Начните изучать профессию тестировщика на бесплатном онлайн-интенсиве Skillbox. Подключайтесь к прямому эфиру с 15 по 17 сентября в 13:00 по московскому времени. За 3 дня пройдёте путь от основ юзабилити до автотестов.

Станьте гуру в востребованной профессии: 👉 https://clc.to/_wb2og
Для новичков в сфере IT:

📎 знакомство с профессией;
📎 изучение основ и ключевых инструментов тестирования;
📎 проведение первых тестов.

Для начинающего тестировщика:

📍 структурируете знания, изучите правила юзабилити и стандарты тестирования в крупных IT-компаниях;
📍 научитесь проверять сервисы на баги через API с помощью инструмента Postman.

Спикер интенсива — старший специалист по тестированию, организатор тест-сессий, митапов по тестированию и мастер-классов, участник конференций SQA-days, TechTrain и CodeFest Дмитрий Якин.

🎁 Участвуйте и прокачайте знания. Получите в подарок электронную книгу «Человек + машина» и сертификат на 10 000 рублей на любой курс Skillbox.
Использование метода float()

Если входная строка имеет аргументы за пределами диапазона чисел с плавающей запятой, вы получите ошибку OverflowError.

Для реализации следующих скриптов на Python установите сам Python, а также подходящую IDE (Pycharm, Jupiter, Spyder и т.д.). Создайте новый файл, вставьте туда код и запустите его.
Как перевернуть список в Python с помощью функции reversed()

Функция reversed() принимает список в качестве аргумента и возвращает нам исходные элементы, только в обратном порядке.

Если вы хотите сохранить возвращаемое значение из функции reversed() для дальнейшего использования, то нужно преобразовать результат в список с помощью функции list(). Далее необходимо присвоить получившееся выражение переменной, в нашем случае my_new_list.
Хотите работать с Python? Участвуйте в бесплатных вебинарах по Machine Learning и научитесь писать программы искусственного интеллекта.

Создайте «умного» чат-бота на онлайн-интенсиве: 👉 https://clc.to/R8ATqg.

Что будет:

💡 познакомитесь с основами Python-разработки;
💡 поработаете с дата-сетами;
💡 создадите чат-бота и подключите его к Telegram.

А ещё будут подарки!

Ждём вас в прямом эфире 19–21 сентября в 21:00 по московскому времени. Участвуйте, задавайте вопросы и получите сертификат на 10 000 рублей на любой курс Skillbox.
Функции reversed()

Важно! Не путайте функцию reversed() с методом .reverse()!

Встроенная функция reversed() меняет порядок элементов списка на противоположный и позволяет нам обращаться к каждому элементу по отдельности.
Динамический ввод (ч.1)

В Java, C++ и других статически типизированных языках нужно указывать тип данных возвращаемого значения функции и тип каждого её аргумента. Напротив, Python, как динамически типизированный язык, не вынуждает явно указывать типы данных. На основе присвоенных значений Python отслеживает их сам.
🤔 Освоить Python за полгода и начать работать?

На курсе «Профессия Python-разработчик» это точно возможно. Вы изучите язык с нуля, познакомитесь с фреймворком Django и уже через 6 месяцев сможете устроиться на первую работу. Кстати, эти полгода проходить курс можно бесплатно!

На курсе вы научитесь:

— создавать программы на Python с базами данных: напишете Telegram-бота и — собственную социальную сеть;
— тестировать код;
— работать в команде: пройдёте стажировку вместе с другими участниками курса и создадите маркетплейс под руководством тимлида;
— упаковывать проекты в Docker и применять DevOps-практики.

В конце курса — помощь от Центра карьеры и гарантированное трудоустройство. Если вы не выйдете на работу, мы вернём вам деньги за курс.

Переходите по ссылке, чтобы узнать подробности и оставить заявку на курс: https://clc.to/SoCiUw
Упрощение создания операторов сравнения

Декоратор functools.total_ordering используется здесь для упрощения процесса реализации упорядочения экземпляров класса. Для обеспечения его работы нужно лишь чтобы были объявлены операторы сравнения lt и eq. Это — тот минимум, который нужен декоратору для конструирования остальных операторов сравнения.
​​Хотите узнать, зачем нужен DevOps? Почему компании так активно нанимают DevOps-инженеров и какие задачи стоят перед этими специалистами? Присоединяйтесь к бесплатному онлайн-интенсиву Skillbox, который пройдёт 22–24 сентября в 21:00 по московскому времени.

Подробности: 👉 https://clc.to/WoFdrg.
Тем, кто зарегистрируется, сразу отправим на почту чек-лист «Погружаемся в DevOps».


Кому подойдёт интенсив:
— junior-разработчикам;
— опытным разработчикам и сисадминам.

Вы решите реальную бизнес-задачу и научитесь:
— ориентироваться в подходе DevOps;
— работать с Docker;
— использовать методологию CI/CD.

Спикером интенсива будет Lead DevOps-специалист, руководитель нескольких проектов, команд и онлайн-курсов, ведущий подкастов об IT и образовании — Константин Брюханов.

🎁 Всем дошедшим до конца интенсива подарим электронную книгу Пола Доэрти и Джеймса Уилсона «Человек + машина» издательства МИФ. Участвуйте, задавайте вопросы и получите сертификат на 10 000 рублей на любой курс Skillbox.

Присоединяйтесь к прямым эфирам!
Операторы сравнения

Существует немало операторов сравнения. Например — lt, le, gt, ge. Мало кому понравится перспектива их реализации для некоего класса. Можно ли как-то упростить эту скучную задачу? Да, можно — с помощь декоратора functools.total_ordering