Перегонка кортежа в словарь
Допустим, у нас есть кортеж, где каждое значение – строка из двух символов.
Если «навесить» функцию dict()
, то в результате мы получим словарь с разделенными на ключ – значение парами.
Бесплатное пробное занятие для детей 8-17 лет, поможем сделать осознанный выбор обучения.
Примите участие в профориентационном занятии по творчеству и программированию от онлайн-школы GeekBrains. Согласно исследованиям, люди в юном возрасте четко определившие свой жизненный путь в 80% случаев имеют более высокие доходы и комфортный уровень жизни.
Приходите на пробный урок, чтобы:
— Определить подходящее IT-направление для вашего ребёнка
— Получить ценные советы и обратную связь от преподавателя
— Оценить преимущества онлайн-обучения
— Выбрать курс, который понравится вашему ребенку больше всего!
Присоединяйтесь к занятию по ссылке, подарите своему ребенку возможности стать профессионалом своего дела раньше.
Реклама. Информация о рекламодателе по ссылкам в посте.
🚀 Едадил приглашает Python-разработчиков на борт!
Едадил – сервис Яндекса, где собраны скидки, спецпредложения и кэшбеки. Мы помогаем людям совершать выгодные покупки!
Мы в поиске талантливых Python-разработчиков, специализирующихся на асинхронном программировании и с опытом коммерческой разработки более 3 лет. Если вы мастер своего дела и готовы к новым вызовам, присоединяйтесь к нашей команде!
Ищем специалистов из разных уголков России!
Что вас ждет?
● Работа в классном офисе в гибридном формате
● Конкурентоспособная заработная плата, соцпакет и возможности для профессионального роста.
● Работа в команде единомышленников над проектами, влияющими на жизнь миллионов пользователей.
Выбирайте подходящую вакансию:
– Asyncio Python-разработчик
– Python-разработчик с опытом в PostgreSQL, noSQL, Docker и Git
– Python-разработчик с навыками в Python 3.10, aiohttp, YQL, YTsaurus, Docker
Реклама. ООО "Яндекс", ИНН 7736207543.
Проверка существования переменной с помощью «моржового» оператора
Если мы объявили две переменные, но не задали любой из них значение, то с помощью оператора :=
(Walrus Operator) можно спасти программу от падения и добавить обрабатывающую логику. В первом случае, в переменные name1, name2 мы ничего не записали, значит, программа зайдет в блок else.
Во втором случае заполнена только одна из переменных, но программа отработает без ошибки.
Оператор match для проверки типа
Теперь освоение новых библиотек у вас точно ускорится.
Порой, трудно понять, какой тип данных возвращает функция или метод. В таких случаях помогают match и встроенные функции приведения к тому или иному типу данных.
Пройдите бесплатный мини-курс по маркетингу от Skillbox: 4 востребованные digital-профессии и получите персональную карьерную консультацию.
Вы узнаете, как эффективно продвигать бизнес в онлайне — от анализа целевой аудитории до получения первых результатов рекламных кампаний. Попробуете разные digital-профессии в маркетинге и сможете выбрать подходящую.
Всем участникам мини-курса подготовлены подарки:
— Год английского языка
— Чек лист "Как начинающему маркетологу устроиться на работу"
— Сертификат на скидку 10 000 рублей для любого курса
Предложение ограничено по времени: регистрируйтесь по ссылке, и проходите мини-курс бесплатно вместо 19 900₽.
Реклама. Информация о рекламодателе по ссылкам в посте.
TypeVarTuple
Допустим, мы создаём функцию convert_first_int()
, которая возвращает кортеж практически неизменным, только первый элемент приводит к целочисленному типу.
TypeVarTuple представляет собой произвольный кортеж потенциально разных типов. Полезно, если функция имеет дело только с первым элементом кортежа, и нам «разрешит» любые оставшиеся типы.
Импорт
В версии Python 3.12 наконец стало возможным импортировать модули в адекватном для английского языка порядке слов!
Пройди профориентационный тест от Академии Eduson и найди работу мечты.
Более 47% людей работают не по своей специальности. А сколько раз тебе приходилось сомневаться в выборе профессии?
Доверься инновационному тесту от профессионалов — узнай, где ты будешь получать наибольший доход, и получать удовольствие от работы. Не дай случаю выбрать за тебя, определи свое будущее с помощью теста от Академии Eduson!
Нажми «Начать тест» — и узнай, какая профессия тебя ждет!
Реклама. Информация о рекламодателе по ссылкам в посте.
Skillbox дарит 14 дней бесплатного обучения английскому языку!
Обучение подойдет, если вы:
— хотите начать обучение и знаете, что оно дастся непросто
— уже говорите, но хотите прокачать английский
— хотите освоить язык в сжатые сроки
— хорошо понимаете речь, но с трудом говорите
Методика обучения разработана специально для русскоговорящих и дает первые результаты после 8 занятий — она учитывает особенности артикуляции и построения фраз. Вы избежите ошибок и быстро начнете говорить.
Приобретение обучения гарантирует повышение уровня английского, или Skillbox доучит бесплатно!
🎁 Получить бесплатный доступ к платформе можно по промокоду PythonSchool — переходите и обучайтесь: https://go.redav.online/67987768d3dcabe0?erid=LdtCKHfVR&m=1
Что нового в Python 3.12. Обратная косая черта в f-строках
До Python 3.12 использовать backslash в интерполируемых строках было нельзя. Теперь же мы смело можем внедрять и разрывы строк (\n), и переносы кареток (\r), и другие подобные символы.
Что нового в Python 3.12. TypedDict для определения типов **kwargs
Если вам доводилось налегать на kwargs (keyword arguments – аргументы c ключевыми словами), то вы помните, что оператор двойная звездочка издавна упаковывает аргументы, переданные по имени, в словарь.
Теперь мы можем использовать TypedDict
(буквально – словарь с заданными типами значений) для того, чтобы такие аргументы получили большую свободу типов.
Что нового в Python 3.12. Перезапись декоратора
Если у нас есть класс Base c методом get_color()
, и в наследном классе GoodChild
мы хотим эту функцию переопределить, то инструкцией @override
это сделать очень просто.
Станьте Веб-разработчиком за 0₽
Зарплата начинающего веб-разработчика от 100 000₽, а стоимость обучения на профессию в онлайн-школах от 120 000 до 300 000 рублей.
Создайте свой собственный сайт всего за 4 практических занятия.
⚠️ Переходите по ссылке и забирайте курс по Веб-разработке — только до 31 марта: https://go.redav.online/5deb738e49e6acb0?erid=LdtCK7b7u&m=1
В 2024 году НИКТО не купит квартиру. Посмотрите сами: даже убогая студия стоит 10-15-20 миллионов, ипотека — чистое рабство на 30 лет и дальше будет только хуже.
Но это ложь. И чтобы это понять — достаточно читать Не Движется.
Там на пальцах рассказывают, как получить от государства 950 000 на покупку квартиры, как получить ипотеку под 0% годовых и что надо сделать, чтобы купить квартиру вдвое дешевле.
Подписывайтесь, других таких каналов просто нет: Не движется
Проверка наличия элемента в множестве
Мы можем проверить, находится ли тот или иной элемент в списке с помощью оператора in.
То же применимо и для множеств (set).
Автоматическое добавление ключа словарю
Если создать словарь средствами collections.defaultdict
, добавить хотя бы один элемент, а затем обратиться к несуществующему ключу.
try / except + else + finally
Мастхэв для начинающих питонистов — пара try / except
, обработчик исключений. Шикарным дополнением к такому блоку является, на мой взгляд, else: он опишет поведение программы на случай других ошибок, которых может быть немало!
Более того, добавив finally
, вы выполните завершающие работы, например, скомандуете выслать уведомление
Пройдите бесплатный мини-курс по программированию и получите год английского языка в подарок.
На курсе вы напишите своё собственное приложение и сайт, научитесь разрабатывать видимую часть сайтов и их внутреннюю логику.
Вы приобретете навыки:
— Верстки веб-страниц с использованием HTML и CSS
— Создания backend части приложений
— Работы с базами данных, включая MySQL и SQL
— Программирования на JavaScript для интерактивности
Всех участников курса ждут подарки: год английского языка, 5 материалов по веб-разработке и многие другие, проходите курс и забирайте свои бонусы по ссылке.
Включение генераторов, сетов
Раньше был эффективный способ генерировать списки — «списковое включение» (List Comprehension).
Оказывается, этому поддаются и другие составные типы — генераторы и сеты.
Pretty Print словаря
Выводить многоуровневые словари с print()
— боль: разрывы строк исчезнут, файл станет нечитаемым.
Но встроенная утилита pprint
, выдаст в командной строке «причёсанный» словарь.
Станьте Python-разработчиком за 0₽
Зарплата начинающего Python разработчика от 100 000₽, а стоимость обучения на профессию в онлайн-школах от 120 000 до 300 000 рублей.
Прямо сейчас GeekBrains отдают бесплатно 3 курса по IT, в том числе и курс по Python.
⚠️Переходите по ссылке и забирайте курс по Python — только до 31-го марта: https://go.redav.online/3e8dfed8ea729e10?erid=LdtCK7b7u&m=1
Защита от SQL-инъекций
Безопасники скажут вам, что: внутрь текста (например, в поле анкеты) можно внедрить SQL-запрос и даже дропнуть базу данных. Но не дай бог нам с вами увидеть такое на проде.
Начиная с Python 3.11 мы можем использовать LiteralString во избежание таких уязвимостей.
Что нового в Python 3.12. Улучшенный подсказки для импорта
Если вы забыли подтянуть библиотеку инструкцией import
, то теперь интерпретатор вежливо подскажет (‘did you forget...’
) и укажет на опечатки в названии подключаемого модуля.
Что нового в Python 3.12. Переиспользование кавычек в f-строках
Теперь напрягать внимание, чтобы вложить в строку объект в кавычках, не нужно. Система поймет, где открывающая, а где — закрывающая кавычка, любое количество раз.
Что нового в Python 3.12. Порядок слов в инструкции импорта
В крайней версии Python 3.12, наконец, стало возможным импортировать модули в адекватном для английского языка порядке слов.
Станьте Дизайнером за 0₽
Зарплата начинающего дизайнера от 50 000₽, а стоимость обучения на профессию в онлайн-школах от 120 000 до 220 000 рублей.
Прямо сейчас GeekBrains отдают бесплатно 5 курсов по IT, в том числе и курс по дизайну.
Переходите по ссылке и забирайте курс по дизайну. Акция продлится до 25 марта: https://go.redav.online/638ec50db5c1f060?erid=LdtCK7b7u&m=1
Что нового в Python 3.12. Псевдонимы типов
Если мы объявим кортеж Point
, который состоит из двух чисел с плавающей запятой, и собираемся создавать его экземпляры, с этим поможет инструкция type.
Локальная (Local) и глобальная (Global)
Сразу видно глобальную переменную – global. Она удобна в использовании, но не безопасна. При разрастающемся коде легко добиться ситуации, что переменная меняется несколько раз, и это создает лазейки для ее перезаписи всем желающим. Впрочем, за семь лет программирования проблемных ситуаций на этой почве у меня не возникло ни разу. Но информационной безопасностью не занимаюсь.
Заполучить вторую переменную local в сниппете ниже можно только при вызове func().
Охватывающая (Enclosing)
Позволяет «выходить» из локальной о.в. на верхний уровень — но не глобальный. Допустим, у нас есть функция func1()
, в которой определена еще одна функция func2()
. Оператор nonlocal
позволяет внутренней переменной enclosing
выйти на уровень видимости «верховной» функции.
Такие звери нужны, если вы используете вложенные функции, что в целом случается нечасто. Самый простой пример употребления – цикл внутри цикла, счетчик i и снаружи, и внутри.