Python 3.10의 6가지 유용한 기능

Python 3.10의 6가지 유용한 기능

Python 3.10은 사용자가 다운로드할 수 있는 가장 안정적인 버전 중 하나를 자랑하며 올해 말에 출시될 예정입니다. 새로 출시된 버전에는 초보자와 숙련된 프로그래머 모두를 위한 사용하기 쉬운 기능과 같은 많은 눈에 띄는 변경 사항이 포함될 것입니다.





새 Python 버전의 눈에 띄는 개선 사항에는 구조적 패턴 일치의 도입, 더 나은 오류 메시지, 새로운 통합 연산자, 디버깅을 위한 정확한 줄 번호 등이 포함됩니다.





다음은 Python 3.10에 대해 알아야 할 사항입니다.





Python 3.10의 구조적 패턴 일치

Structural Pattern Matching은 코드 작성을 간단하게 만들어주며 계속해서 최신 Python 버전의 두드러진 하이라이트 중 하나입니다. Python은 이전 버전의 프로그래밍 언어에 있는 기존의 match-case 문을 개선하는 것을 목표로 합니다. Python 내의 기존 match-case 문을 업데이트했습니다.

Structural Pattern Matching의 구현을 간단히 살펴보겠습니다.



match-case 문은 한동안 파이썬 언어의 일부였습니다. 이 문장은 기본적으로 글을 쓰는 지루한 작업을 피하기 위해 사용됩니다. 다른 경우라면 여러 번 진술.

새 빌드에서 이 기능을 사용하여 유사한 속성을 가진 개체와 일치시킬 수 있습니다.





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은 다양한 오류 메시지의 원인을 해독하는 데 계속해서 협력하고 있습니다.

Windows에서 Mac을 에뮬레이트하는 방법

예를 들어 많은 사람들은 Python에서 다음 오류가 발생하는 이유를 모를 수 있습니다.

SyntaxError: unexpected EOF while parsing error message.

그러한 진술의 명확성이 부족하여 최신 Python 버전이 기존 오류 메시지 세트를 개선하도록 촉발했습니다.

이전 메시지는 다음과 같은 이해하기 쉬운 오류 메시지로 대체되었습니다.

{ 닫은 적이 없음 구문 분석 중 예기치 않은 EOF

몇 가지 추가 변경 사항은 다음과 같습니다.

다음과 같은 속성 오류:

from collections import namedtoplo

모듈 'collections'에는 'namedtoplo' 속성이 없습니다. 이름이 지정된 튜플을 의미합니까?

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 릴리스에는 미리 정의된 유형 힌트 기능 세트가 함께 제공됩니다.

커널 전원 오류 창 10

합집합 연산자에는 조건부 논리가 포함됩니다. 예를 들어, 정수 또는 뜨다 다음과 같이 쓸 수 있습니다. 조합 [X, Y] . 새로운 공용체 연산자는 다음과 같이 표현할 수 있습니다. 정수|플로트 또한.

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_이노탭 속성을 지정하고 새 메서드를 사용합니다. co_lines () 기인하다. 이 속성은 다음과 같은 방식으로 작동합니다. f_lineo 항상 정확한 줄 번호를 포함합니다.

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

관련 항목: Python 코드 디버그

6. 주석 평가 연기

Python 내에서 유형 주석의 평가는 함수 정의 시간에 수행됩니다. 이는 유형 주석이 하향식 방식으로 한 줄씩 평가됨을 의미합니다.

최선의 선택처럼 보일 수 있지만 이 접근 방식에는 여전히 두 가지 문제가 있습니다.

  • 유형 힌트는 아직 정의되지 않고 작동하지 않는 유형을 나타냅니다. 이러한 힌트는 문자열로 표현되어야 합니다.
  • 유형 힌트가 실시간으로 실행됨에 따라 모듈 가져오기 속도가 느려졌습니다.

실행 문제를 피하기 위해 주석은 다음 위치에 저장됩니다. _주석_ 및 평가가 함께 수행됩니다. 이것은 모듈 가져오기가 먼저 실행될 때 전방 참조를 허용하여 초기화 시간을 줄입니다.

Python 3.10의 최신 기능으로 작업하기

Python의 최신 버전은 2021년 10월 4일에 출시됩니다. 기존 버전에 존재하는 버그를 수정할 것을 약속합니다. 다음 버전은 현재 3.10 버전을 개선합니다.

Structural Pattern Mapping은 이 새로운 업데이트의 하이라이트이며 유사한 객체에 대한 코드 작성을 더 간단하게 만듭니다. 괄호로 묶인 컨텍스트 관리자 및 새로운 유형의 통합 연산자와 같은 다른 기능은 코드를 더 간단하고 효율적으로 만드는 것을 목표로 합니다.

그럼에도 불구하고 기존 Python 버전에는 몇 가지 뛰어난 예외 처리 기술이 있습니다. Python의 기능을 잘 활용할 수 있습니다.

공유하다 공유하다 트위터 이메일 파이썬에서 예외를 처리하는 방법

Python 예외로 코딩 기반을 다룹니다.

다음 읽기
관련 항목
  • 프로그램 작성
  • 프로그램 작성
  • 파이썬
  • 코딩 팁
저자 소개 위니발라(41개 기사 게재)

Wini는 델리에 거주하는 작가로 2년의 저술 경험이 있습니다. 글을 쓰는 동안 그녀는 디지털 마케팅 대행사 및 기술 회사와 관련이 있습니다. 그녀는 프로그래밍 언어, 클라우드 기술, AWS, 기계 학습 등과 관련된 콘텐츠를 작성했습니다. 여가 시간에는 그림을 그리고, 가족과 시간을 보내고, 가능하면 산으로 여행하는 것을 좋아합니다.

위니발라가 참여한 작품 더보기

뉴스레터 구독

뉴스레터에 가입하여 기술 팁, 리뷰, 무료 전자책 및 독점 거래를 확인하십시오!

구독하려면 여기를 클릭하세요.