Пройдите курс и через 4 месяца вы сможете выдвинуть свою кандидатуру на позицию middle-разработчика!
⠀
Во время обучения вы:
получите практику разработки микросервисной архитектуры приложения;
освоите оптимизацию запросов к базам данных;
научитесь использовать фреймворк Django для миграций;
узнаете, как правильно анализировать ошибки;
сможете собирать метрики с сервиса для оценки его работы.
Обучение проходит онлайн в удобное для вас время, достаточно выделять 3–5 часов в неделю. При помощи опытных наставников вы разработаете три самостоятельных проекта:
поисковый движок;
управление аккаунтами;
хранение и мониторинг данных.
Итогом вашей работы на курсе станет большое приложение — аналог IMDb, которое вы напишете вместе с командой. В проекте вы будете использовать микросервисы, которые разработали на курсе. А затем добавите дополнительную возможность авторизации или комментариев на выбор.
Регистрируйся по ссылке: https://clc.am/9MVq3g
⠀
Во время обучения вы:
получите практику разработки микросервисной архитектуры приложения;
освоите оптимизацию запросов к базам данных;
научитесь использовать фреймворк Django для миграций;
узнаете, как правильно анализировать ошибки;
сможете собирать метрики с сервиса для оценки его работы.
Обучение проходит онлайн в удобное для вас время, достаточно выделять 3–5 часов в неделю. При помощи опытных наставников вы разработаете три самостоятельных проекта:
поисковый движок;
управление аккаунтами;
хранение и мониторинг данных.
Итогом вашей работы на курсе станет большое приложение — аналог IMDb, которое вы напишете вместе с командой. В проекте вы будете использовать микросервисы, которые разработали на курсе. А затем добавите дополнительную возможность авторизации или комментариев на выбор.
Регистрируйся по ссылке: https://clc.am/9MVq3g
Важные методы в Python, которые должен знать каждый питонист. Мы уже рассказывали про некоторые из них. Соберем на этот раз побольше и заодно освежим память.
abs() - возвращает модуль переданного параметра.
all() - функция возвращает значение True, если все элементы в итерируемом объекте - истинны. В противном случае, она возвращает значение False.
any() - функция возвращает True, если какой-либо (любой) элемент в итерируемом объекте является истинным True. В противном случае, any() возвращает значение False.
ascii() - возвращает строку, содержащую печатное представление объекта, и экранирует символы, отличные от ASCII, в строке с помощью экранирования \ x, \ u или \ U.
bin() - функция преобразует целое число в двоичную строку с префиксом 0b.
abs() - возвращает модуль переданного параметра.
all() - функция возвращает значение True, если все элементы в итерируемом объекте - истинны. В противном случае, она возвращает значение False.
any() - функция возвращает True, если какой-либо (любой) элемент в итерируемом объекте является истинным True. В противном случае, any() возвращает значение False.
ascii() - возвращает строку, содержащую печатное представление объекта, и экранирует символы, отличные от ASCII, в строке с помощью экранирования \ x, \ u или \ U.
bin() - функция преобразует целое число в двоичную строку с префиксом 0b.
bool() - возвращает False, если значение объекта 0, в противном случае возвращает True.
eval() - это встроенная функция, используемая в Python. Функция eval анализирует аргумент выражения и оценивает его как выражение python. Проще говоря, функция eval оценивает «String» как выражение Python и возвращает результат.
exec() - встроенная функция похожая на eval, но она полностью выполняет код находящийся внутри. Ее использование может быть не безопасно. К примеру при запуске неизвестного кода. Старайтесь учитывать этот момент.
hash() - возвращает целое являющееся хешем объекта. Хеш используется, в частности, для быстрого сравнения ключей при поиске по словарям.
help() - функция предназначена для вывода документации, подробно разбирали в другом посте.
eval() - это встроенная функция, используемая в Python. Функция eval анализирует аргумент выражения и оценивает его как выражение python. Проще говоря, функция eval оценивает «String» как выражение Python и возвращает результат.
exec() - встроенная функция похожая на eval, но она полностью выполняет код находящийся внутри. Ее использование может быть не безопасно. К примеру при запуске неизвестного кода. Старайтесь учитывать этот момент.
hash() - возвращает целое являющееся хешем объекта. Хеш используется, в частности, для быстрого сравнения ключей при поиске по словарям.
help() - функция предназначена для вывода документации, подробно разбирали в другом посте.
Flask
Мы уже рассказывали об этом простом фреймворке для создания сайтов. Ранее говорилось, что сильный минус - отсутствие асинхронности. Но недавно (12 мая) вышла новая версия — Flask 2.0
Все новые особенности:
- Прекращена поддержка Python версии 2. Минимальная версия Python 3.6
- Поддержка асинхронных view и других обратных вызовов
- Добавлено изменение к декораторам:
- Команда flask shell включает завершение табуляции, как это делает обычная оболочка python.
- При обслуживании статических файлов браузеры будут кэшировать на основе содержимого, а не на основе 12-часового таймера. Это означает, что изменения статического содержимого, такого как стили CSS, будут немедленно отражены при перезагрузке без необходимости очистки кеша.
Наконец-то.
Мы уже рассказывали об этом простом фреймворке для создания сайтов. Ранее говорилось, что сильный минус - отсутствие асинхронности. Но недавно (12 мая) вышла новая версия — Flask 2.0
Все новые особенности:
- Прекращена поддержка Python версии 2. Минимальная версия Python 3.6
- Поддержка асинхронных view и других обратных вызовов
- Добавлено изменение к декораторам:
@app.post ("/ login") == @ app.route ("/ login", methods = ["POST"])- Новая функция Config.from_file для загрузки конфигурации из файла любого формата.
- Команда flask shell включает завершение табуляции, как это делает обычная оболочка python.
- При обслуживании статических файлов браузеры будут кэшировать на основе содержимого, а не на основе 12-часового таймера. Это означает, что изменения статического содержимого, такого как стили CSS, будут немедленно отражены при перезагрузке без необходимости очистки кеша.
Наконец-то.
Серверные приложения на Kotlin — это как на Java, но быстрее и удобнее.
Как использовать этот язык для создания бэкенда?
Получите все необходимые навыки за 5 месяцев на практическом онлайн-курсе «Kotlin Backend Developer» от Otus:
— Изучите возможности и фреймворки Kotlin
— Сможете использовать корутины для асинхронного программирования
— Погрузитесь в тонкости разработки бэкенда
— Освоите востребованные инструменты Cassandra, AWS, ELK-stack и т.д.
— Реализуете 3 своих серверных приложения
После обучения вы сможете разрабатывать очень сложные бэкенд-проекты и овладеете профессиональными навыками, которые необходимы если вы нацелены дорасти до тим лида.
🔥 Успейте занять место со скидкой -20% https://otus.pw/KVjv/
Как использовать этот язык для создания бэкенда?
Получите все необходимые навыки за 5 месяцев на практическом онлайн-курсе «Kotlin Backend Developer» от Otus:
— Изучите возможности и фреймворки Kotlin
— Сможете использовать корутины для асинхронного программирования
— Погрузитесь в тонкости разработки бэкенда
— Освоите востребованные инструменты Cassandra, AWS, ELK-stack и т.д.
— Реализуете 3 своих серверных приложения
После обучения вы сможете разрабатывать очень сложные бэкенд-проекты и овладеете профессиональными навыками, которые необходимы если вы нацелены дорасти до тим лида.
🔥 Успейте занять место со скидкой -20% https://otus.pw/KVjv/
Базы Данных SQL
Осталось несколько важных моментов про sqlite (а вот и предыдущий пост об этом). Например, про обновление данных в таблице и собственно получение.
На языке SQL чтобы обновить таблицу мы используем подобный синтаксис:
В SQL есть команда похожая на пайтоновский in - LIKE.
Внимание! Часто при получении данных последний элемент может быть пустым, рекомендуем делать проверку.
#Базы_Данных #SQL
Осталось несколько важных моментов про sqlite (а вот и предыдущий пост об этом). Например, про обновление данных в таблице и собственно получение.
На языке SQL чтобы обновить таблицу мы используем подобный синтаксис:
tableРазумеется, обновить мы можем несколько значений за один запрос и искать не по id, а, например, по названию. Для запроса на получение указываем SELECT, когда запрос выполнен методом fetchall() для получения всех результатов.
SET name = 'new name'
WHERE id = 1
В SQL есть команда похожая на пайтоновский in - LIKE.
Внимание! Часто при получении данных последний элемент может быть пустым, рекомендуем делать проверку.
#Базы_Данных #SQL
У тебя уже есть базовые навыки программирования и ты планируешь дальше развиваться в IT? Попробуй освоить DevOps, познакомься с понятиями Docker, CI и Kubernetes за 3 дня на бесплатном онлайн-интенсиве: 🔜 https://clc.am/dCdyyA.
Твоим наставником будет Владимир Утратенко — engineering manager в «Сравни.ру», соорганизатор сообщества DevOps Moscow и конференции DevOpsDays Moscow.
Ты научишься:
✔️ разбираться в DevOps-инженерии;
✔️ собирать контейнер с приложением;
✔️ запускать его при помощи Docker-compose;
✔️ настраивать непрерывную интеграцию (CI);
✔️ работать с сервисом Kubernetes.
🎁 Всем участникам интенсива подарим электронную книгу Кей Петерсон и Дэвида Колба «Век живи — век учись» издательства МИФ. А все, кто сдаст домашнюю работу, получат сертификат на 15 000 рублей на любой курс Skillbox.
Используй свой шанс! Ждём тебя в прямом эфире 24–26 мая в 19:00 по московскому времени!
Твоим наставником будет Владимир Утратенко — engineering manager в «Сравни.ру», соорганизатор сообщества DevOps Moscow и конференции DevOpsDays Moscow.
Ты научишься:
✔️ разбираться в DevOps-инженерии;
✔️ собирать контейнер с приложением;
✔️ запускать его при помощи Docker-compose;
✔️ настраивать непрерывную интеграцию (CI);
✔️ работать с сервисом Kubernetes.
🎁 Всем участникам интенсива подарим электронную книгу Кей Петерсон и Дэвида Колба «Век живи — век учись» издательства МИФ. А все, кто сдаст домашнюю работу, получат сертификат на 15 000 рублей на любой курс Skillbox.
Используй свой шанс! Ждём тебя в прямом эфире 24–26 мая в 19:00 по московскому времени!
Функция sum()
Как бы вы решили задачу получения суммы элементов списка без обхода элементов в цикле?
Это можно сделать с помощью стандартной функции sum().
Cинтакс функции sum():
iterable - итерируемые типы (list ,dict, tuple, и.т.д.)
start - (необязательно) значение этого параметра прибавляется к уже готовой сумме элементов iterable. По умолчанию значение этого параметра 0.
Возвращаемое значение из sum():
sum() возвращает сумму start и элементов всех последующих элементов.
Как бы вы решили задачу получения суммы элементов списка без обхода элементов в цикле?
Это можно сделать с помощью стандартной функции sum().
Cинтакс функции sum():
start)Параметры sum():
iterable - итерируемые типы (list ,dict, tuple, и.т.д.)
start - (необязательно) значение этого параметра прибавляется к уже готовой сумме элементов iterable. По умолчанию значение этого параметра 0.
Возвращаемое значение из sum():
sum() возвращает сумму start и элементов всех последующих элементов.
Практика атак и защиты сетей при супер-базовых знаниях в ИБ — это возможно?
Команда практикующих ИБ-спецов создали серию интенсивов для начинающих специалистов, которые хотять получить новые знания и грамотную Roadmap.
Уже 1 июня пройдёт заключительный интенсив Кибербезопастность: Level 0 — участие доступно со скидкой 50%
Интенсив гарантированно поможет разобраться:
— С чего начинается эффективная система информационной безопасности
— Принципы осуществления кибератак и построения защиты
— Как работать с системами обнаружения и предотвращения вторжений (IDS/IPS)
Десятки студентов всего за 3 дня занятий онлайн уже получили готовую базу навыков, сертификаты и бонусы от HackerU.
Бронируйте места в учебной группе уже сейчас со скидкой 50% по ссылке: https://is.gd/FGEprX
Команда практикующих ИБ-спецов создали серию интенсивов для начинающих специалистов, которые хотять получить новые знания и грамотную Roadmap.
Уже 1 июня пройдёт заключительный интенсив Кибербезопастность: Level 0 — участие доступно со скидкой 50%
Интенсив гарантированно поможет разобраться:
— С чего начинается эффективная система информационной безопасности
— Принципы осуществления кибератак и построения защиты
— Как работать с системами обнаружения и предотвращения вторжений (IDS/IPS)
Десятки студентов всего за 3 дня занятий онлайн уже получили готовую базу навыков, сертификаты и бонусы от HackerU.
Бронируйте места в учебной группе уже сейчас со скидкой 50% по ссылке: https://is.gd/FGEprX
Mодуль cmath
Функции в математическом модуле стандартной библиотеки Python обрабатывают числа с плавающей запятой. Для комплексных чисел библиотека Python содержит модуль cmath.
📌Функция polar():
Эта функция возвращает полярное представление декартовой записи комплексного числа. Возвращаемое значение - это кортеж, состоящий из модуля и фазы.
📌Функция phase():
Эта функция возвращает угол против часовой стрелки между осью x и сегментом, соединяющим точку с исходной точкой. Угол представлен в радианах и находится между π и -π.
📌Функция rect():
Эта функция возвращает декартово представление комплексного числа, представленного в полярной форме, то есть по модулю и фазе.
📌Функция sin():
Эта функция возвращает тригонометрическое соотношение синуса фазового угла, представленного в радианах.
Функции в математическом модуле стандартной библиотеки Python обрабатывают числа с плавающей запятой. Для комплексных чисел библиотека Python содержит модуль cmath.
📌Функция polar():
Эта функция возвращает полярное представление декартовой записи комплексного числа. Возвращаемое значение - это кортеж, состоящий из модуля и фазы.
📌Функция phase():
Эта функция возвращает угол против часовой стрелки между осью x и сегментом, соединяющим точку с исходной точкой. Угол представлен в радианах и находится между π и -π.
📌Функция rect():
Эта функция возвращает декартово представление комплексного числа, представленного в полярной форме, то есть по модулю и фазе.
📌Функция sin():
Эта функция возвращает тригонометрическое соотношение синуса фазового угла, представленного в радианах.
Начните свой отпуск правильно!
Пока все остальные отдыхают, у вас есть фора — SF Education сделали цены ниже, чтобы вы могли выгодно инвестировать в себя.
Запишитесь на курсы по финансам, менеджменту и техническим навыкам со скидкой до 65% и за лето измените свою жизнь: освойте профессию, прокачайте новые навыки, получите повышение.
Для подписчиков канала мы собрали специальную подборку программ:
⁃ программа «Бизнес-аналитик»
⁃ курс «Excel Аcademy»
⁃ курс «Data Science academy»
На все курсы действуют:
⁃ сashback 7% + скидка 5% при оплате картой банков-партнеров
⁃ Возврат 15% стоимости курса для 20 лучших студентов
⁃ беспроцентная рассрочка от банков-партнеров
⁃ вычет 13% НДФЛ на обучение
Ловите волну успеха вместе с SF Education → регистрация
Пока все остальные отдыхают, у вас есть фора — SF Education сделали цены ниже, чтобы вы могли выгодно инвестировать в себя.
Запишитесь на курсы по финансам, менеджменту и техническим навыкам со скидкой до 65% и за лето измените свою жизнь: освойте профессию, прокачайте новые навыки, получите повышение.
Для подписчиков канала мы собрали специальную подборку программ:
⁃ программа «Бизнес-аналитик»
⁃ курс «Excel Аcademy»
⁃ курс «Data Science academy»
На все курсы действуют:
⁃ сashback 7% + скидка 5% при оплате картой банков-партнеров
⁃ Возврат 15% стоимости курса для 20 лучших студентов
⁃ беспроцентная рассрочка от банков-партнеров
⁃ вычет 13% НДФЛ на обучение
Ловите волну успеха вместе с SF Education → регистрация
Методов списков list
Напоминаю, списки в Python – упорядоченные последовательности элементов различных типов данных. Списки можно изменять, например, добавлять новые элементы.
1. list.append(x) – добавляет элемент, переданный в качестве аргумента, в конец списка. Этот метод является самым простым и распространённым в коде.
2. list.insert(i, x) – вставляет элемент в переданную позицию. Первый аргумент означает индекс элемента, перед которым будет добавлено новое значения.
Таким образом,
3. list.extend(iterable) – расширяет список, добавляя все элементы другой коллекции.
Напоминаю, списки в Python – упорядоченные последовательности элементов различных типов данных. Списки можно изменять, например, добавлять новые элементы.
1. list.append(x) – добавляет элемент, переданный в качестве аргумента, в конец списка. Этот метод является самым простым и распространённым в коде.
2. list.insert(i, x) – вставляет элемент в переданную позицию. Первый аргумент означает индекс элемента, перед которым будет добавлено новое значения.
Таким образом,
list.insert(0, x)
вставит элемент в начало списка, а list.insert(len(list), x)
эквивалентно записи list.append(x)
.3. list.extend(iterable) – расширяет список, добавляя все элементы другой коллекции.
От написания кода до релиза — DevOps-инженер все держит под контролем! Поэтому спрос на этих специалистов всего лишь за 2 года вырос на 70%
Хочешь освоить по-настоящему востребованную профессию? Образовательная платформа GeekBrains открывает набор на Факультет DevOps
Даже если вы никогда не работали в IT, вы получите востребованную и высокооплачиваемую специальность. Сможете использовать методологии Agile и Scrum, оптимизировать CI/CD и работать с облачными технологиями.
18 месяцев обучения, 4 полноценных проекта в портфолио, качественное резюме, диплом гособразца о переподготовке и помощь в трудоустройстве — и это все в сопровождении с топовыми экспертами-практиками, которые поделятся личным опытом и ответят на любые ваши вопросы.
Первый платеж за обучение можно совершить через 6 месяцев. Скорее регистрируйтесь, ведь сейчас на курс действует скидка 35% → https://gb.ru/link/HY1skq
Хочешь освоить по-настоящему востребованную профессию? Образовательная платформа GeekBrains открывает набор на Факультет DevOps
Даже если вы никогда не работали в IT, вы получите востребованную и высокооплачиваемую специальность. Сможете использовать методологии Agile и Scrum, оптимизировать CI/CD и работать с облачными технологиями.
18 месяцев обучения, 4 полноценных проекта в портфолио, качественное резюме, диплом гособразца о переподготовке и помощь в трудоустройстве — и это все в сопровождении с топовыми экспертами-практиками, которые поделятся личным опытом и ответят на любые ваши вопросы.
Первый платеж за обучение можно совершить через 6 месяцев. Скорее регистрируйтесь, ведь сейчас на курс действует скидка 35% → https://gb.ru/link/HY1skq
Сегодня будет день чистой практики.
Посмотрели туториал — повторили — запустили — profit!
1. Простейший web сервер на Python. Смотреть.
2. Как узнать, что скачивает человек, по его IP. Смотреть.
3. Голосовой ассистент - разбор кода. Смотреть.
4. Голосовой ассистент на Python - добавляем навыки. Смотреть.
5. Голосовой ассистент на Python. Смотреть.
6. Чат-бот на Python + Dialogflow. Смотреть.
Посмотрели туториал — повторили — запустили — profit!
1. Простейший web сервер на Python. Смотреть.
2. Как узнать, что скачивает человек, по его IP. Смотреть.
3. Голосовой ассистент - разбор кода. Смотреть.
4. Голосовой ассистент на Python - добавляем навыки. Смотреть.
5. Голосовой ассистент на Python. Смотреть.
6. Чат-бот на Python + Dialogflow. Смотреть.
Методы list в Python
Во время собеседования на вакансию
python-разработчика очень часто звучат вопросы про списки и их методы.
Мы собрали для вас часть этих методов.
1. append() - добавляет элемент в конец списка.
2. clear() - удаляет все элементы из списка
3. copy() - делает поверхностную копию списка. Почему нужно пользоваться именно этим методом, а не присваиванием мы разбирали в другой статье.
4. count() - считает, сколько раз в списке встречается переданный аргумент.
#list
Во время собеседования на вакансию
python-разработчика очень часто звучат вопросы про списки и их методы.
Мы собрали для вас часть этих методов.
1. append() - добавляет элемент в конец списка.
2. clear() - удаляет все элементы из списка
3. copy() - делает поверхностную копию списка. Почему нужно пользоваться именно этим методом, а не присваиванием мы разбирали в другой статье.
4. count() - считает, сколько раз в списке встречается переданный аргумент.
#list
This media is not supported in your browser
VIEW IN TELEGRAM
Хочешь погрузиться в атмосферу Data Science и завести полезные знакомства? Приходи на бесплатный ODS Meetup at Elbrus Bootcamp, который пройдет 31 мая в 19:00 по Мск.
ML-инженеры из института Сколтех и биотехнологической компании Biocad выступят с докладами:
💥 Гайд для контрибьютора PyTorch: как, а главное зачем?
💥 Алгоритмы и приложения, помогающие химикам создавать медикаменты
В перерывах между спикерами будет много нетворкинга!🔥 Так что не упусти возможность познакомиться с единомышленниками и обзавестись полезными контактами.
Приходи на встречу в московском кампусе или присоединяйся к онлайн-трансляции. Meetup подходит как для новичков, так и специалистов, которые хотят развиваться и обмениваться опытом с коллегами.
Регистрируйся по ссылке: https://clck.ru/V8h73 Количество мест ограничено!
Ждем тебя на встрече или в прямом эфире 31 мая в 19:00 🚀
ML-инженеры из института Сколтех и биотехнологической компании Biocad выступят с докладами:
💥 Гайд для контрибьютора PyTorch: как, а главное зачем?
💥 Алгоритмы и приложения, помогающие химикам создавать медикаменты
В перерывах между спикерами будет много нетворкинга!🔥 Так что не упусти возможность познакомиться с единомышленниками и обзавестись полезными контактами.
Приходи на встречу в московском кампусе или присоединяйся к онлайн-трансляции. Meetup подходит как для новичков, так и специалистов, которые хотят развиваться и обмениваться опытом с коллегами.
Регистрируйся по ссылке: https://clck.ru/V8h73 Количество мест ограничено!
Ждем тебя на встрече или в прямом эфире 31 мая в 19:00 🚀
Библиотека Numpy
Преимущество и зачем использовать разобрали в предыдущем посте. Теперь углубим свои знания, а позже расскажем про pandas и интеграции с SQL.
Библиотеку требуется установить:
Но помните, что использовать данный метод с типом float нужно осторожно из-за ограничения точности чисел с плавающей запятой. Обычно его заменяют методом linspace, который принимает не шаг, а кол-во нужных элементов.
#numpy
Преимущество и зачем использовать разобрали в предыдущем посте. Теперь углубим свои знания, а позже расскажем про pandas и интеграции с SQL.
Библиотеку требуется установить:
install numpyДля создания массива можно использовать методы array или empty. А вместо знакомого range() присутствует более быстрый arange.
Но помните, что использовать данный метод с типом float нужно осторожно из-за ограничения точности чисел с плавающей запятой. Обычно его заменяют методом linspace, который принимает не шаг, а кол-во нужных элементов.
#numpy
Функции map(), filter() и reduce() используют, чтобы привнести в Python немного функционального программирования.
Все три из них являются удобными функциями, которые можно заменить на списки или циклы. Но они
обеспечивают более элегантный и краткий подход к некоторым задачам.
1. map() - функция map перебираeт все элементы в данном итеративном объекте и выполняeт функцию, которую мы передали в качестве аргумента для каждого из них.
2. filter() - Подобно map(), filter() принимает объект функции и итерацию и создает новый список. Как следует из названия, filter() формирует новый список, содержащий только элементы, удовлетворяющие определенному условию.
3. reduce() - reduce работает иначе, чем map() и filter(). Он не возвращает новый список, основанный на функции и итерации, которые мы передали.
Вместо этого он возвращает одно значение. На картинке мы приводим пример сложения чисел. Но это самое простейшее. Можно перемножать, возводить в квадрат и многое другое (и не обязательно с числами).
#iterators
Все три из них являются удобными функциями, которые можно заменить на списки или циклы. Но они
обеспечивают более элегантный и краткий подход к некоторым задачам.
1. map() - функция map перебираeт все элементы в данном итеративном объекте и выполняeт функцию, которую мы передали в качестве аргумента для каждого из них.
2. filter() - Подобно map(), filter() принимает объект функции и итерацию и создает новый список. Как следует из названия, filter() формирует новый список, содержащий только элементы, удовлетворяющие определенному условию.
3. reduce() - reduce работает иначе, чем map() и filter(). Он не возвращает новый список, основанный на функции и итерации, которые мы передали.
Вместо этого он возвращает одно значение. На картинке мы приводим пример сложения чисел. Но это самое простейшее. Можно перемножать, возводить в квадрат и многое другое (и не обязательно с числами).
#iterators
Илон Маск теперь в Телеграм!
Железный человек 21 века, колонизатор Марса, создатель Tesla, основатель PayPal, инженер гражданского огнемета, отправитель первого туриста на Луну.
Канал посвящённый гению, миллиардеру, плейбою и филантропу: @ElonMusk
Железный человек 21 века, колонизатор Марса, создатель Tesla, основатель PayPal, инженер гражданского огнемета, отправитель первого туриста на Луну.
Канал посвящённый гению, миллиардеру, плейбою и филантропу: @ElonMusk
List Comprehensions
Удаление элемента из списка во время его итерации – это проблема, которая хорошо известна любому опытному разработчику.
К счастью, Python включает в себя ряд элегантных парадигм программирования, которые при правильном использовании могут привести к значительному упрощению и оптимизации кода.
Одна из таких парадигм – list comprehensions. Генераторы списков часто используют именно для решения подобных проблем, что и показывает реализация кода.
Заметьте, что в примере "забывается" старый список и на его месте появляется новый.
#list
Удаление элемента из списка во время его итерации – это проблема, которая хорошо известна любому опытному разработчику.
К счастью, Python включает в себя ряд элегантных парадигм программирования, которые при правильном использовании могут привести к значительному упрощению и оптимизации кода.
Одна из таких парадигм – list comprehensions. Генераторы списков часто используют именно для решения подобных проблем, что и показывает реализация кода.
Заметьте, что в примере "забывается" старый список и на его месте появляется новый.
#list