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

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

Работаем с @Tgpodbor_official

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

Пару недель назад мы получили вопрос от читателя, который и сподвиг нас на написание данной статьи. Вопрос был такой: «Почему объект типа x = map(lambda x: x * 2, [1 ,2, 3, 4, 5]) совсем не занимает места, а вот после применения функции list(x) к данному объекту в памяти оказываются все значения этого выражения?»

Мы надеемся, что на данный момент вы уже понимаете, что тут происходит. Объект на выходе функции map также ленивый и может быть проитерирован. Вычисление x * 2 выполняется только для одного элемента в каждом цикле. Если вы примените функцию list(x), то вычислите сразу все элементы списка. Таким образом, если вы хотите итерировать объект map, функцию list() применять не нужно.
Сомневаешься в решении? Регистрируйся на бесплатный курс по программированию от GeekBrains, научись работать с алгоритмами за 3 занятия и узнай решение задачи: 
https://clc.to/Ekkjyg

Бонус: до 31 мая тебе бонусом откроют доступ на воркшоп по Python.

Для тебя это будет хороший старт. После прохождения курса ты сможешь:

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

– Лучше понять, как выстроить свое обучение и что действительно необходимо знать в этой сфере.

– Более осознанно и грамотно самостоятельно изучать материалы в интернете.

– Получить реальные практические навыки программиста.

Всё это в бесплатном курсе «Основы программирования». GeekBrains открывает доступ к платным программам, сегодня это абсолютно бесплатно.  Забери свое место на курсе:
https://clc.to/Ekkjyg
Поверхностное копирование

Поверхностное копирование создает отдельный новый объект или список, но вместо копирования дочерних элементов в новый объект, оно просто копирует ссылки на их адреса памяти. Следовательно, если вы сделаете изменение в исходном объекте, оно будет отражено в скопированном объекте, и наоборот.
🚀Присоединяйтесь к нам на первые бесплатные уроки и исследуйте самые востребованные и легкие профессии IT!

На наших вебинарах вы найдете ответы на все интересующие вас вопросы. Переходите по ссылке https://crst.co/nUnQt, выбирайте понравившуюся тему и регистрируйтесь.До встречи в прямом эфире!

▶️ 26 мая  - Manual QA Course. Первый урок бесплатный!
▶️ 10 мая - Best Tech Remote Careers 2022: Systems Engineer
▶️ 2 июня - Systems Engineer. Первый урок бесплатный!

Специальное предложение всем участникам!

Регистрация по ссылке https://crst.co/AXzUV
Чтение JSON из файла

Чтение JSON из файла такое же простое, как и запись. С помощью библиотеки json мы можем спарсить JSON-строку прямо из файла.

json.load — очень важный метод, запомните его. С его помощью происходит чтение файла, парс JSON-данных. После этого все данные записываются в словарь и возвращаются вам.

Как и у json.dump, у json.load есть дополнительный метод. Он позволяет работать со строками напрямую, ведь чаще всего у вас не будет файлоподобного объекта, содержащего JSON. Как вы уже догадались, называется он json.loads. Допустим, вы вызываете конечную точку REST с помощью GET, который возвращает строку. Ее мы и можем напрямую передать в json.loads.
Только до 31.05.22 крупнейший ресурс о кибербезопасности в три раза дешевле!

XAKEP.RU доверяют 130 000 ИТ-специалистов, и не просто так. В их базе 66 000 обучающих технических материалов! Чтобы быть в курсе и разбираться в теме кибербезопасности, ИТ-спецу просто необходима подписка на XAKEP.RU!
А сейчас у них еще и огромная скидка!

Подробно о подписке: https://xakep.ru/about-magazine/
Глубокое (полное) копирование

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

Короче говоря, оба объекта становятся полностью независимы друг от друга. Это похоже на концепцию передачи по значению в таких языках, как C ++, Java и C #.
Когда стоит использовать замыкания?

Так для чего же нужны замыкания?

Замыкания позволяют избежать использования глобальных (global) значений и обеспечивают некоторую форму сокрытия данных. Для этого также может использоваться объектно-ориентированный подход.

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

Вот простой пример, где замыкание может быть более предпочтительным, чем определение класса и создание объектов. Но выбор остается за вами.
re.findall()

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

Синтаксис: re.findall(шаблон, строка)

Возвращаемое значение может быть либо списком строк, совпавших с шаблоном, либо пустым списком, если совпадений не нашлось.
Стать тестировщиком — легко! Присоединяйтесь к бесплатному онлайн-интенсиву 6–8 июня в 19:00 по московскому времени. Вы погрузитесь в процессы тестирования и за 3 дня пройдёте путь от основ юзабилити до автотестов. Попрактикуетесь на реальных задачах и узнаете, как стать гуру в востребованной профессии.

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

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

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

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

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

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

Этот способ форматирования был представлен в раннем Python 3. По сути, новый синтаксис удалил символы %. Вместо них он предоставил .format() в качестве строкового метода. Этот метод принимает позиционные аргументы для вставки в места, определенные фигурными скобками.

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

С помощью метода str.format() вы можете сделать больше, чем просто вставить значение переменной в строку. Например, можно указать точность, округление и заполнение нулями.
Хотите разбираться в Python-разработке? Пройдите бесплатный интенсив по программированию! Подключайтесь к прямым эфирам с 6 по 8 июня в 21:00 по московскому времени.

Успейте записаться и получить полезные скрипты на Python: ▶️ https://clc.to/uN-TtQ.

📍 Изучите основы Python и разберётесь в типах данных, структурах, функциях и ООП.
📍 Разработаете сервер для прослушивания подключений.
📍 Поработаете с библиотеками PyQT, Kivy, wxWidgets, Тkinter.
📍 Создадите полезную программу для обмена сообщениями.

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

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

Часто возникают ситуации, когда нужно перебрать коллекцию и отслеживать индексы элементов, к которым вы получили доступ. Для этих целей многие использует range(len(коллекция)).

Функция enumerate возвращает enumerate-объект, который хранит в себе и индексы элементов, и их значения.

С помощью этой функции вы облегчите доступ и к индексам, и к значениям.

Рассмотрим пример, в котором видна разница между range(len(коллекция)) и enumerate(коллекция).
Стать тестировщиком — легко! Присоединяйтесь к бесплатному онлайн-интенсиву 6–8 июня в 19:00 по московскому времени. Вы погрузитесь в процессы тестирования и за 3 дня пройдёте путь от основ юзабилити до автотестов. Попрактикуетесь на реальных задачах и узнаете, как стать гуру в востребованной профессии.

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

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

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

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

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

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

С помощью встроенной функции zip() мы можем все немного упростить.

Обратите внимание: функция zip() возвращает zip-объект, но с помощью приведения типов вы можете преобразовать его — например, с помощью list(), tuple() или dict().
Python — лучший язык программирования для старта в IT
Он используется в разных областях: от сайтов и приложений до нейросетей, а вакансий много и в России, и за рубежом.

7 июня пройдет бесплатная онлайн-встреча, на которой вы узнаете: кто может стать Python-разработчиком, какие нужны навыки и инструменты, как освоить программирование без опыта и начать зарабатывать от 80 000₽.

А главное, под руководством эксперта-практика, попробуете себя в деле и напишите первые строки кода.

🎁 Подарок для участников: карьерный гид по профессии!
🔹Регистрируйтесь по ссылке — https://clc.to/-Czkcw
Как отформатировать строку с помощью f-строк

F-строки (сокращение от format string) – это новейший метод из поддерживаемых Python 3, поэтому он быстро набирает популярность.

f-строки похожи на метод .format(). Однако они предоставляют более ёмкий способ сделать то же самое, всего лишь добавив к строке букву f в качестве префикса.

Последовательный порядок из метода конкатенации
Модульность метода .format()
Благодаря этим достоинствам все больше и больше разработчиков используют именно этот метод. Кроме того, этот подход легко освоить. Так что, если вы еще новичок в программировании, то f-строки однозначно для вас.
Специалисты с английским получают зарплату на 44% выше, чем не знающие языка.
Пожалуй, это главная причина учить английский.

Начни прямо сейчас!
Запишись на бесплатный вебинар онлайн-школы English-Tochka.

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

👉Регистрация здесь 👈
Замена значений переменных

Если есть желание поменять значения переменных. Можно записать это в 3 строчки. Но можно и в одну. Трюки питона.
Какой язык программирования выбрать? Участвуйте в бесплатном онлайн-интенсиве, попробуйте несколько направлений и решите, какая специализация нравится вам больше.

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

Что будет на вебинарах:

● обзор популярных языков программирования: Java, Python, 1С;
● работа с кодом на каждом из этих языков;
● знакомство со смежными направлениями: frontend-разработкой, тестированием, Data Science, разработкой Android- и iOS-приложений;
● советы о том, как составить резюме и пройти собеседование.

📌Спикер интенсива — разработчик с опытом 17 лет в сфере Java- и веб-разработки Даниил Пилипенко. Он находит IT-специалистов для крупнейших компаний России.

Присоединяйтесь к прямому эфиру с 9 по 11 июня в 19:00 по московскому времени!

🎁Каждый участник при регистрации получит чек-лист «Знания и навыки, которые необходимы для трудоустройства backend-разработчика». Участвуйте, задавайте вопросы и получите сертификат на 10 тысяч рублей на любой курс Skillbox.

Те, кто дойдёт до конца интенсива, получат электронную книгу «Человек + машина» Пола Доэрти и Джеймса Уилсона.