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

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

Работаем с @Tgpodbor_official

Ссылка РНК: https://clck.ru/3Ghwjd
加入频道
Блок for…else

Все мы знаем, что else неразрывно связан с блоком if, но вы, возможно, не в курсе, что else используется в цикле for.

В выражении for...else блок else выполняется только в том случае, если все итерации цикла будут успешно завершены. Если же выполнение цикла прерывается оператором break, то else не выполняется.
Вы знаете о таких инструментах, как Docker и GitLab CI? Хотите познакомиться с основами профессии DevOps-специалиста?

Регистрируйтесь: 👉 https://clc.to/gzygeQ
Сразу отправим вам на почту чек-лист «Погружаемся в DevOps».

👨‍💻 Skillbox проводит бесплатный трёхдневный онлайн-интенсив по погружению в профессию DevOps-специалиста. Он синхронизирует отделы разработки и администрирования, автоматизирует их процессы.

Под руководством спикера интенсива и Lead DevOps-специалиста в ВТБ Константина Брюханова вы узнаете много нового об интересной сфере и повысите уровень своих знаний в области IT.

За 3 дня поймёте:
💻 что такое DevOps и зачем он нужен бизнесу;
💻 как работать с Docker;
💻 как создаются CI/CD-пайплайны в GitLab CI.

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


Ждём вас в эфире 10–12 мая в 21:00 по московскому времени!
Как рассчитать дату в будущем в Python

Давайте посчитаем, какая дата будет после промежутка time_delt1, который мы создали ранее.

Чтобы вычислить будущий момент времени, нам нужно только добавить диапазон, определенный объектом timedelta, к текущему времени.
Как вывести текущую дату и время в Python

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

Получить текущую дату и время можно при помощи вызова метода now() объекта datetime, как показано во фрагменте кода
Функция open()

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

Выражение with open(...) не считывает файл целиком и не запоминает его в памяти. Вместо этого оно возвращает итерируемый объект типа file. Благодаря этому можно читать огромные файлы и не беспокоиться о памяти.
Вы — новичок в программировании или начинающий разработчик? Познакомьтесь с одним из самых популярных и востребованных языков программирования — Python!

Узнайте больше: 👉 https://clc.to/GNDo-g.

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

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

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

Подключайтесь к бесплатному онлайн-интенсиву с 10 по 12 мая в 21:00 по московскому времени!
issubclass()

Функция принимает 2 параметра, оба должны быть классами. Если первый унаследован от второго, то функция вернет True, иначе False
Используем f-строки для упрощения вывода информации в консоль

Начиная с Python 3.8 f-строки могут быть использованы для самодокументирования — с помощью =.

Это значит, что для того, чтобы вывести в консоль какое-то значение, вам больше не нужно писать f"variable_name = {variable_name}".

Изменение это небольшое, но довольно важное. Благодаря ему вы не просто избавитесь от повторений в коде, но и упростите его чтение.
Хотите попробовать силы в Data Science? Пройдите бесплатный онлайн-интенсив по обработке и анализу данных с 16 по 18 мая. Начало прямых трансляций — в 19:00 по московскому времени.

Записывайтесь: 👉 https://clc.to/8APT1Q.

Кому полезен интенсив:

📌 Интересующимся новичкам. Узнаете, с чем сталкиваются в работе специалисты по данным. Решите несколько реальных задач и оцените, интересна ли вам эта профессия.
📌 Начинающим специалистам. Научитесь применять Python для построения статистических моделей. Поработаете с библиотеками Pandas и Matplotlib. Разберёте несколько практических заданий и повысите свой уровень.

💬 Спикер интенсива — руководитель направления по исследованию данных в Сбере с семилетним опытом в программировании Анастасия Борнева.

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


Присоединяйтесь!
Кортежи

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

Мы можем использовать кортеж, например, для хранения информации о человеке (о его имени, возрасте, месте жительства).

Заметьте, что в предложении return мы не использовали круглые скобки для возврата значения. Это потому, что кортеж можно вернуть, просто отделив каждый элемент запятой.

«Кортеж образуют запятые, а не круглые скобки» — так написано в документации. Но для создания пустых кортежей круглые скобки необходимы. Также это помогает избежать путаницы.
Функция filter():

Функция filter() используется для создания списка, состоящего из значений, для которых функция возвращает true.

Так же, как и map(), эта функция может использовать в качестве параметра пользовательские функции, а также lambda-функции.
Стать тестировщиком — легко! Присоединяйтесь к бесплатному онлайн-интенсиву 16–18 мая в 19:00 по московскому времени. Вы погрузитесь в процессы тестирования и за 3 дня пройдёте путь от основ юзабилити до автотестов. Попрактикуетесь на реальных задачах и узнаете, как стать гуру в востребованной профессии.

Регистрация уже идёт: 👉 https://clc.to/dqLHHQ

На интенсиве узнаете:

✔️ какие soft и hard skills нужны крутому специалисту;
✔️ каковы принципы тестирования и ключевые инструменты;
✔️ каких трёх правил юзабилити нужно придерживаться;
✔️ как качественно описать баг;
✔️ что представляет собой популярное расширение Selenium IDE.

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

🎁 Участвуйте и прокачайте знания! Получите в подарок подборку полезных материалов при регистрации и электронную книгу «Человек + машина», когда дойдёте до конца интенсива.

Подключайтесь к прямым эфирам и используйте возможность получить сертификат на 10 тысяч рублей на любой курс Skillbox.
Функция range()

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

Начиная с Python 3 такие процедуры были значительно оптимизированы с точки зрения расхода памяти и времени. Это очень хорошо видно на примере функции range(). Мы не сомневаемся, что каждый разработчик хоть раз, но применял данную функцию.

В Python 2 функция range(5) вернет список из пяти элементов. При увеличении длины списка будет требоваться все больше и больше памяти.
Как в новой реальности быстро начать карьеру в IT без навыков программирования?

17 и 18 мая пройдет бесплатный онлайн-интенсив, на котором вы узнаете: как быстро начать карьеру в IT с нуля, в чем преимущества профессии тестировщика ПО, сколько можно зарабатывать и в каких направлениях развиваться дальше.

А главное, попробуете себя в деле: вместе с экспертом решите свою первую задачу в качестве тестировщика.
🔹Регистрируйтесь по ссылке https://clc.to/2y8VCQ
Преобразуем список в словарь при помощи генератора словаря

Для преобразования списка Python в словарь также можно использовать генератор словаря.

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

Что касается синтаксиса, в генераторе словаря используются фигурные скобки {}, а в генераторе списка — квадратные [ ].

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

Затем мы использовали генератор словаря, чтобы пройтись по каждому элементу в списке fruits. Для каждого фрукта в нашем списке мы добавили элемент в новый словарь. При этом каждому фрукту мы присвоили значение In stock.
Как создать базовый объект timedelta в Python

Для начала давайте создадим базовый объект timedelta:

Итак, мы успешно создали объект timedelta. Теперь нам нужно создать «эталонное» время, чтобы можно было применить созданный нами объект timedelta для выполнения каких-нибудь арифметических действий.
Проверяем переменную на истинность

Создаём Python-файл со следующим кодом. Для проверки переменной DEBUG на истинность здесь используется функция get(). Программа выводит разные сообщения в зависимости от значения переменной.
Изучайте основы SQL на бесплатном онлайн-интенсиве Skillbox. Подключайтесь к прямым эфирам 19–21 мая в 19:00 по московскому времени: 👉 https://clc.to/HC8CuQ.

Разобраться в теме поможет профи — специалист по анализу данных, сертифицированный SQL-разработчик Microsoft Мкртич Пудеян.

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

Записывайтесь!
Присваиваем значение переменной окружения

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

Давайте напишем код, чтобы с помощью функции setdefault() изменить значение переменной DEBUG на True (по умолчанию установлено False). После установки значения мы проверим его функцией get().

Если мы сделали всё правильно, выведется сообщение «Режим отладки включен», в противном случае – «Режим отладки выключен».
Конвертируем два списка в словарь при помощи zip()

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

Для этого мы можем использовать такую функцию Python, как zip(). Она позволяет объединить два списка. Элементы одного списка мы можем использовать в качестве ключей для словаря, а элементы второго — в качестве значений.

Итак, предположим, что у нас есть два списка: один содержит названия фруктов, а другой – их цены. Мы хотим создать единый словарь, в котором будет храниться название фрукта и его цена.