6 лучших полезных функций Python 3.10

6 лучших полезных функций Python 3.10

Python 3.10 может похвастаться тем, что является одной из самых стабильных версий, доступных для загрузки пользователями, и будет выпущен позже в этом году. В недавно выпущенной версии будет много заметных изменений, таких как простые в использовании функции как для новичков, так и для опытных программистов.





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





Вот что вам нужно знать о Python 3.10:





Сопоставление структурных шаблонов в Python 3.10

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

Давайте быстро познакомимся с реализациями сопоставления структурных шаблонов:



Оператор match-case уже некоторое время является частью языка Python. Этот оператор в основном используется, чтобы избежать утомительной работы по написанию если еще заявление несколько раз.

Вы можете сопоставлять объекты с похожими свойствами, используя эту функцию в новой сборке.





match media_object:case Image(type='jpg'):# Return as-isreturn media_objectcase Image(type='png') | Image(type='gif'):return render_as(media_object, 'jpg')case Video():raise ValueError('Can't extract frames from video yet')case other_type:raise Exception(f'Media type {media_object} can't be handled yet')

Новая библиотека Python распознает такие объекты, как jpg, gif и видео. Этот код может работать без сбоев, не вызывая ошибок.

2. Улучшенные сообщения об ошибках.

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





Эти сообщения об ошибках были далеки от совершенства, поскольку новичкам (иногда даже опытным пользователям) становилось трудно определить настоящую причину ошибки в своих кодах. Как программист, Google продолжает быть вашим союзником в расшифровке причин различных сообщений об ошибках.

как перенести сохранения Steam на другой компьютер

Например, многие люди могут не знать, почему Python выдает следующую ошибку:

SyntaxError: unexpected EOF while parsing error message.

Отсутствие ясности в таких утверждениях побудило новейшую версию Python улучшить существующий набор сообщений об ошибках.

Старые сообщения были заменены понятными сообщениями об ошибках, например:

{никогда не закрывался неожиданный EOF при разборе

Еще несколько изменений включают:

Ошибки атрибутов, например:

from collections import namedtoplo

модуль 'коллекции' не имеет атрибута 'namedtoplo'. Возможно, вы имели в виду: namedtuple?

Сообщения NameError изменены, чтобы выглядеть так:

new_var = 5print(new_vr)>

NameError: имя new_vr не определено. Возможно, вы имели в виду: new_var?

3. Заключенные в скобки менеджеры контекста

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

Представьте, что вы пишете такое утверждение:

with open('file1.txt', 'r') as fin, open('file2.txt', 'w') as fout:fout.write(fin.read())

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

with open('file1.txt', 'r') as fin, open('file2.txt', 'w') as fout: fout.write(fin.read())

С появлением нового диспетчера контекста в скобках вы также можете разорвать строку, используя круглые скобки:

with (open('file1.txt', 'r') as fin,open('file2.txt', 'w') as fout):fout.write(fin.read())

Связанный: Идеи проекта Python, подходящие для начинающих

4. Оператор Союза нового типа

Небольшая, но удобная функция в Python 3.10 - это новый тип оператора объединения. Каждый выпуск Python поставляется с предопределенным набором функций подсказки типов.

какие вещи на задней панели телефонов людей

Оператор объединения включает условную логику; Например, int или плавать можно записать как Союз [X, Y] . Новый оператор объединения может быть выражен как int | float также.

Введение нового операнда объединения в Python 3.10 позволяет сэкономить время и делает код четко определенным.

Например:

def f(x: int | float) -> float: return x * 3.142f(1) # passf(1.5) # passf('str') # linter will show annotation error

5. Точные номера строк для отладки

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

Некорректное отслеживание ошибок особенно заметно при написании sys.settrace и сопутствующие инструменты на Python. В новой версии это значительно улучшено, и вы можете видеть точные номера строк при возникновении ошибки.

Чтобы получить более точный номер строки, Python 3.10 сдвигает свою надежность с текущего co_Inotab атрибут и использует новый метод co_lines () атрибут. Этот атрибут работает таким образом, что f_lineo всегда содержит точный номер строки.

1. for (2. x) in [1]:3. pass4. return

Связанный: Отладка кода Python

6. Отложенная оценка аннотаций

В Python оценка аннотации типа выполняется во время определения функции. Это означает, что аннотации типов оцениваются построчно, сверху вниз.

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

  • Подсказки типов относятся к типам, которые еще не определены и не работают; эти подсказки должны быть выражены в виде строк.
  • Импорт модуля замедлился, так как подсказки типов выполняются в реальном времени.

Чтобы избежать проблем с выполнением, аннотации хранятся в _аннотации_ и оценка выполняется вместе. Это позволяет выполнять прямую ссылку, поскольку сначала выполняется импорт модуля, что сокращает время инициализации.

Работа с новейшими функциями в Python 3.10

Последняя версия Python выйдет 4 октября 2021 года; он обещает исправить ошибки, которые присутствуют в существующих версиях. Следующие версии улучшат текущую версию 3.10.

Структурное сопоставление образцов - это изюминка этого нового обновления, которое упрощает написание кодов для похожих объектов. Другие функции, такие как менеджеры контекста в скобках и операторы объединения нового типа, призваны сделать код более простым и эффективным.

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

Делиться Делиться Твитнуть Эл. адрес Как обрабатывать исключения в Python

Покройте свои основы кодирования исключениями Python.

Читать далее
Похожие темы
  • Программирование
  • Программирование
  • Python
  • Советы по кодированию
Об авторе Вини Бхалла(Опубликовано 41 статья)

Вини - писатель из Дели, у нее 2-летний писательский опыт. Во время писательской работы она была связана с агентствами цифрового маркетинга и техническими фирмами. Она написала контент, связанный с языками программирования, облачными технологиями, AWS, машинным обучением и многим другим. В свободное время она любит рисовать, проводить время с семьей и путешествовать в горы, когда это возможно.

Ещё от Wini Bhalla

Подписывайтесь на нашу новостную рассылку

Подпишитесь на нашу рассылку, чтобы получать технические советы, обзоры, бесплатные электронные книги и эксклюзивные предложения!

Нажмите здесь, чтобы подписаться