이제 AST 노드는 노드 끝의 정확한 위치를 제공하는 와 어트리뷰트를 가집니다. (이것은 와 어트리뷰트가 있는 노드에만 적용됩니다.)
새 함수 는 특정 AST 노드의 소스 코드를 반환합니다.
(Contributed by Ivan Levkivskyi in .)
함수에는 몇 가지 새로운 플래그가 있습니다:
(Contributed by Guido van Rossum in .)
은 임시 API를 졸업하고 안정 API가 되었습니다. 이 함수는 이벤트 루프를 자동으로 관리하면서 을 실행하고 결과를 반환하는 데 사용할 수 있습니다. 예를 들면:
이것은 대략 다음과 동등합니다:
실제 구현은 훨씬 더 복잡합니다. 따라서, 은 asyncio 프로그램을 실행하는 데 선호되는 방법이어야 합니다.
(Contributed by Yury Selivanov in .)
를 실행하면 네이티브 하게 비동기 REPL을 시작합니다. 이를 통해 최상위 가 있는 코드를 빠르게 실험할 수 있습니다. 더는 호출할 때마다 새로운 이벤트 루프를 만드는 을 직접 호출할 필요가 없습니다:
(Contributed by Yury Selivanov in .)
예외는 이제 이 아닌 을 상속하고, 더는 를 상속하지 않습니다. (Contributed by Yury Selivanov in .)
윈도우에서, 기본 이벤트 루프는 이제 입니다. (Contributed by Victor Stinner in .)
는 이제 UDP도 지원합니다. (Contributed by Adam Meily and Andrew Svetlov in .)
이제 가 (“CTRL+C”)에 의해 인터럽트 될 수 있습니다. (Contributed by Vladimir Matveev in .)
내에 래핑 된 코루틴을 얻기 위한 를 추가했습니다. (Contributed by Alex Grönholm in .)
이제 키워드 인자를 나 이벤트 루프 메서드에 전달하거나, 태스크 객체의 메서드를 호출하여 asyncio 태스크의 이름을 지정할 수 있습니다. 태스크 이름은 의 출력에 표시되며 메서드를 사용하여 조회할 수도 있습니다. (Contributed by Alex Grönholm in .)
에 에 대한 지원이 추가되었습니다. 동작을 지정하기 위해, 두 개의 매개변수가 추가되었습니다: happy_eyeballs_delay와 interleave. Happy Eyeballs 알고리즘은 IPv4와 IPv6을 지원하는 응용 프로그램에서 둘 모두를 사용하여 동시에 연결을 시도하여 응답성을 향상합니다. (Contributed by twisteroid ambassador in .)
내장 이 플래그를 받아들이도록 개선되었습니다. 이 새 플래그가 전달되면, 은 일반적으로 유효하지 문법으로 간주하는 최상위 수준 , 및 구문을 허용합니다. 그러면 플래그로 표시된 비동기 코드 객체가 반환될 수 있습니다. (Contributed by Matthias Bussonnier in )
이제 의 메서드는 대신 를 반환합니다. 파이썬 3.7부터 일반 딕셔너리가 순서를 보장하기 때문에 이것이 가능합니다. 의 추가 기능이 필요하면, 제안된 해결 방법은 원하는 형으로 결과를 캐스팅하는 것입니다: . (Contributed by Raymond Hettinger in .)
클래스는 이제 컨텍스트 관리자로 사용할 수 있습니다. 다음처럼 코드 블록을 프로파일 하십시오:
(Contributed by Scott Sanderson in .)
는 이제 대신 의 인스턴스를 반환합니다. 이 도구는 이제 여전히 필드 순서를 유지하면서 더 빠르고 메모리를 덜 사용합니다. (Contributed by Michael Selik in .)
하부 ncurses 라이브러리에 대한 구조화된 버전 정보를 담는 새로운 변수를 추가했습니다: . (Contributed by Serhiy Storchaka in .)
윈도우에서, 및 서브 클래스는 이제 하부 호출에 대한 플래그를 지정하는 winmode 매개 변수를 받아들입니다. 기본 플래그는 DLL이 저장된 경로(전체나 부분 경로가 초기 DLL을 로드하는 데 사용되었다면)와 로 추가된 경로를 포함하여 신뢰할 수 있는 위치에서만 DLL 종속성을 로드하도록 설정됩니다. (Contributed by Steve Dower in .)
ISO 년, 주 번호 및 요일로 와 객체를 각각 생성하는, 새로운 대체 생성자 와 를 추가했습니다; 이것들은 각 클래스의 메서드의 역입니다. (Contributed by Paul Ganssle in .)
이제 는 데코레이터를 반환하는 함수가 아닌 직접적인 데코레이터로 사용할 수 있습니다. 그래서 이 두 가지가 모두 지원됩니다:
(Contributed by Raymond Hettinger in .)
인스턴스 수명 동안 캐시 된 계산된 속성을 위한 새로운 데코레이터를 추가했습니다.
(Contributed by Carl Meyer in )
를 사용하여 메서드를 로 변환하는 새로운 데코레이터를 추가했습니다:
(Contributed by Ethan Smith in )
이제 는 객체를 가져올 세대(generation)를 나타내는 선택적 generation 매개 변수를 받을 수 있습니다. (Contributed by Pablo Galindo in .)
와 그 변형을 추가했습니다. (Contributed by Franz Glasner, Éric Araujo, and Cheryl Sabella in .)
재현성 있는 출력을 위해 에 mtime 매개 변수를 추가했습니다. (Contributed by Guo Ci Teo in .)
특정 유형의 유효하지 않거나 손상된 gzip 파일의 경우 이제 대신 예외가 발생합니다. (Contributed by Filip Gruszczyński, Michele Orrù, and Zackery Spytz in .)
N 줄(기본적으로 50)을 초과하는 출력은 버튼으로 축소됩니다. N은 설정 대화 상자의 General 페이지의 PyShell 섹션에서 변경할 수 있습니다. 그보다 작은, 하지만 아주 길 수도 있는, 줄은 출력을 마우스 오른쪽 버튼으로 클릭하全球排名第一오피스타면 압착할 수 있습니다. 세계랭킹1위오피스타압착된 출력은 버튼을 더블 클릭해서 제자리에서 확장하거나, 버튼을 마우스 오른쪽 단추로 클릭하여 클립 보드나 별도의 창으로 확장할 수 있습니다. (Contributed by Tal Einat in .)
사용자 정의 설정으로 모듈을 실행하기 위해 Run 메뉴에 “Run Customized”를 추가합니다. 입력한 모든 명령 줄 인자는 sys.argv에 추가됩니다. 또한 다음 사용자 정의 실행을 위해 상자에 다시 나타납니다. 일반적인 셸 메인 모듈 재시작을 억제할 수도 있습니다. (Contributed by Cheryl Sabella, Terry Jan Reedy, and others in and .)
IDLE 편집기 창에 선택적인 줄 번호를 추가했습니다. 창은 구성 대화 상자의 General 탭에서 설정하지 않는 한 줄 번호 없이 열립니다. 기존 창의 줄 번호는 옵션 메뉴에서 표시되거나 숨겨집니다. (Contributed by Tal Einat and Saimadhav Heblikar in .)
OS 네이티브 인코딩은 이제 파이썬 문자열과 Tcl 객체 간 변환에 사용됩니다. 이를 통해 IDLE은 그림 이모티콘과 기타 BMP가 아닌 문자를 사용할 수 있습니다. 이러한 문자는 표시하거나 클립 보드에 복사하고 클립보드에서 붙여넣을 수 있습니다. 문자열을 Tcl에서 파이썬으로 변환했다가 되돌리는 것은 이제 실패하지 않습니다. (많은 사람이 8년 동안 이 작업을 했지만, 마침내 Serhiy Storchaka가 이 문제를 에서 해결했습니다.)
New in 3.8.1:
Add option to toggle cursor blink off. (Contributed by Zackery Spytz
in .)
Escape key now closes IDLE completion windows. (Contributed by Johnny
Najera in .)
위의 변경 사항은 3.7 유지 보수 릴리스로 역 이식되었습니다.
Add keywords to module name completion list. (Contributed by Terry J.
Reedy in .)
함수는 이제 어트리뷰트가 값이 독스트링인 면 독스트링을 찾을 수 있습니다. 이것은 , 및 에 대해 이미 가지고 있는 것과 유사한 문서화 옵션을 제공합니다:
(Contributed by Raymond Hettinger in .)
개발 모드( )와 디버그 빌드에서, 메서드가 실패하면 파이널라이저가 이제 예외를 로그 합니다. 릴리스 빌드에서는 기본적으로 예외가 조용히 무시됩니다. (Contributed by Victor Stinner in .)
함수는 초깃값을 지정하기 위한 옵션 initial 키워드 인자를 추가했습니다:
(Contributed by Lisa Roach in .)
모든 입력 행을 별도의 JSON 객체로 구문 분석하는 옵션을 추가했습니다. (Contributed by Weipeng Hong in .)
에 force 키워드 인자를 추가했습니다. 참으로 설정하면, 루트 로거에 연결된 기존 처리기는 다른 인자로 지정된 구성을 수행하기 전에 제거되고 닫힙니다.
이것은 오랜 문제를 해결합니다. 일단 로거나 basicConfig()가 호출되면, basicConfig()에 대한 후속 호출은 조용히 무시되었습니다. 이로 인해 대화식 프롬프트나 Jupyter 노트북을 사용하여 다양한 로깅 구성 옵션을 갱신, 실험 또는 가르치기가 어려웠습니다.
(Suggested by Raymond Hettinger, implemented by Dong-hee Na, and
reviewed by Vinay Sajip in .)
두 점 사이의 유클리드 거리를 계산하기 위한 새로운 함수 가 추가되었습니다. (Contributed by Raymond Hettinger in .)
다중 차원을 처리하도록 함수를 확장했습니다. 이전에는, 2-D 케이스 만 지원했습니다. (Contributed by Raymond Hettinger in .)
‘start’ 값(기본값: 1)과 숫자의 이터러블의 곱을 반환하는 의 대응 물인 새 함수 를 추가했습니다:
(Contributed by Pablo Galindo in .)
새로운 조합 함수(combinatoric functions) 와 가 추가되었습니다:
(Contributed by Yash Aggarwal, Keller Fuchs, Serhiy Storchaka, and Raymond
Hettinger in , , and .)
정수 제곱근을 부동 소수점으로 변환하지 않고 정확하게 계산하기 위한 새로운 함수 를 추가했습니다. 새 함수는 제한 없이 큰 정수를 지원합니다. 보다 빠르지만 보다 느립니다:
(Contributed by Mark Dickinson in .)
함수 은 더는 int-류가 아닌 인자를 받아들이지 않습니다. (Contributed by Pablo Galindo in .)
클래스에는 이제 시스템 호출에 액세스하는 메서드가 있습니다. (Contributed by Zackery Spytz in .)
새로운 모듈을 추가했습니다. (Contributed by Davin Potts in .)
macOS에서, 이제 기본적으로 spawn 시작 방법이 사용됩니다. (Contributed by Victor Stinner in .)
확장 모듈을 임포트 하거나 를 사용하여 DLL을 로드할 때 네이티브 종속성에 대한 추가 검색 경로를 제공하기 위해 윈도우에서 새로운 함수 가 추가되었습니다. (Contributed by Steve Dower in .)
새로운 함수가 추가되어 시스템 호출을 감쌉니다. (Contributed by Zackery Spytz and Christian Heimes in .)
윈도우에서 재해석 지점(reparse points – 심볼릭 링크와 디렉터리 정션(directory junction)을 포함합니다)을 처리하기 위한 많은 수동 논리가 운영 체제로 위임되었습니다. 특히, 은 이제 운영 체제에서 지원하는 모든 것을 탐색하지만, 은 “이름 서로게이트(name surrogates)”로 식별되는 재해석 지점만 열고 다른 이름은 처럼 엽니다. 모든 경우에, 는 심볼릭 링크에만 를 설정하고 다른 유형의 재해석 지점에는 설정하지 않습니다. 다른 유형의 재해석 지점을 식별하려면, 새 어트리뷰트를 확인하십시오.
윈도우에서, 는 이제 디렉터리 정션을 읽을 수 있습니다. 는 디렉터리 정션에 대해 를 반환함에 유의하십시오. 따라서 를 먼저 확인하는 코드는 정션을 계속 디렉터리로 처리하지만, 의 에러를 처리하는 코드는 정션을 이제 링크로 처리할 수 있습니다.
(Contributed by Steve Dower in .)
As of 3.8.20, and on Windows now support
passing a mode value of to apply access control to the new
directory. This implicitly affects and is a
mitigation for CVE-2024-4030. Other values for mode continue to be
ignored.
(Contributed by Steve Dower in .)
, , , , 및 와 같은 불리언 결과를 반환하는 함수는 이제 OS 수준에서 표현할 수 없는 문자나 바이트를 포함하는 경로에 대해 나 그것의 서브 클래스 와 를 발생시키는 대신 를 반환합니다. (Contributed by Serhiy Storchaka in .).
윈도우에서 는 이제 환경 변수를 선호하며 일반적으로 일반 사용자 계정에 설정되지 않는 을 사용하지 않습니다. (Contributed by Anthony Sottile in .)
윈도우에서 은 존재하지 않는 디렉터리에 대한 링크에 대해 더는 를 반환하지 않습니다.
윈도우에서 는 이제 심볼릭 링크와 디렉터리 정션을 포함하는 재해석 지점을 결정(resolve)합니다.
(Contributed by Steve Dower in .)
, , , , , , , , 과 같은 불리언 결과를 반환하는 메서드는 OS 수준에서 표현할 수 없는 문자가 포함된 경로에 대해 나 그것의 서브 클래스 를 발생시키는 대신 를 반환합니다. (Contributed by Serhiy Storchaka in .)
경로를 가리키는 하드 링크를 만드는 를 추가했습니다. (Contributed by Joannah Nanjekye in )
C 최적화된 를 서브 클래싱하는 확장은 이제 특수 메서드를 정의하여 함수와 클래스의 피클링 로직을 재정의할 수 있습니다. (Contributed by Pierre Glaser and Olivier Grisel in .)
새로운 가 추가되었으며 NSKeyedArchiver 인코딩된 바이너리 plist를 읽고 쓰는 지원을 활성화했습니다. (Contributed by Jon Janzen in .)
모듈은 여러 함수에 sort_dicts 매개 변수를 추가했습니다. 기본적으로, 이러한 함수는 렌더링이나 인쇄 전에 딕셔너리를 계속 정렬합니다. 그러나, sort_dicts가 거짓으로 설정되면, 딕셔너리는 키가 삽입된 순서를 유지합니다. 디버깅하는 동안 JSON 입력과 비교하는 데 유용 할 수 있습니다.
또한, 와 유사하지만 sort_dicts가 로 기본 설정된 새로운 편의 함수 가 있습니다:
(Contributed by Rémi Lapeyre in .)
은 이제 조용한 모드를 지원합니다. (Contributed by Joannah Nanjekye in .)
새 함수는 의 역함수로 작동합니다. (Contributed by Bo Bayles in .)
는 이제 새로운 키워드 인자를 받아들입니다. (Contributed by Josh Bronson in .)
는 이제 이식성과 표준 적합성을 향상하기 위해 새로운 아카이브에 최신 pax (POSIX.1-2001) 형식을 기본으로 합니다, 모듈에 대한 해당 변경 사항을 상속했습니다. (Contributed by C.A.M. Gerlach in .)
윈도우에서 는 이제 그 내용을 먼저 재귀적으로 삭제하지 않고 디렉터리 정션을 삭제합니다. (Contributed by Steve Dower in .)
같은 소켓에서 IPv4와 IPv6 연결을 모두 받아들이는 것을 포함하여 일반적으로 서버 소켓을 만들 때 필요한 작업을 자동화하는 와 편리 함수가 추가되었습니다. (Contributed by Giampaolo Rodolà in .)
, 및 함수가 윈도우에서 구현되었습니다. (Contributed by Zackery Spytz in .)
TLS 1.3 포스트 핸드 셰이크 인증을 활성화하는 와 시작하는 를 추가했습니다. (Contributed by Christian Heimes in .)
의 더 빠른 부동 소수점 변형으로 을 추가했습니다. (Contributed by Raymond Hettinger and Steven D’Aprano in .)
을 추가했습니다 (Contributed by Raymond Hettinger in .)
가장 빈번한 값의 리스트를 반환하는 가 추가되었습니다. (Contributed by Raymond Hettinger in .)
데이터나 분포를 등분위 간격(equiprobable intervals)(예를 들어, 4분위 수(quattiles), 십분위 수(deciles) 또는 백분위 수(percentiles))으로 나누는 를 추가했습니다. (Contributed by Raymond Hettinger in .)
무작위 변수의 정규 분포를 만들고 조작하기 위한 도구인 를 추가했습니다. (Contributed by Raymond Hettinger in .)
“발생시킬 수 없는 예외(unraisable exceptions)” 처리 방법을 제어하기 위해 재정의할 수 있는 새로운 함수를 추가했습니다. 예외가 발생했지만, 파이썬에서 처리할 방법이 없을 때 호출됩니다. 예를 들어, 파괴자(destructor)가 예외를 발생시키거나 가비지 수집() 중에. (Contributed by Victor Stinner in .)
모듈은 새로운 아카이브를 만들 때 이제 이전의 GNU 전용이 아닌 최신 pax (POSIX.1-2001) 형식을 기본값으로 사용합니다. 이것은 표준화되고 확장 가능한 형식으로 일관된 인코딩(UTF-8)을 사용하여 플랫폼 간 이식성을 개선하고, 몇 가지 다른 이점을 제공합니다. (Contributed by C.A.M. Gerlach in .)
As of 3.8.20 on Windows, the default mode used by
now limits access to the new directory due to
changes to . This is a mitigation for CVE-2024-4030.
(Contributed by Steve Dower in .)
잡히지 않은 예외를 처리하는 새로운 함수를 추가했습니다. 잡히지 않은 예외가 처리되는 방식을 제어하기 위해 재정의될 수 있습니다. (Contributed by Victor Stinner in .)
새로운 함수와 어트리뷰트를 클래스에 추가합니다. 이것들은 커널이 할당한 현재 스레드의 네이티브 정수 스레드 ID를 반환합니다. 이 기능은 특정 플랫폼에서만 사용할 수 있습니다, 자세한 내용은 를 참조하십시오. (Contributed by Jake Tesler in .)
모듈은 이제 후행 줄 넘김이 없는 입력을 제공할 때 묵시적으로 토큰을 출력합니다. 이 동작은 이제 C 토크나이저가 내부적으로 수행하는 것과 일치합니다. (Contributed by Ammar Askar in .)
클래스에 , , 및 메서드를 추가했습니다. (Contributed by Juliette Monsel in .)
클래스에 메서드를 추가했습니다. (Contributed by Juliette Monsel in .)
클래스는 이제 과 메서드를 갖습니다. (Contributed by Zackery Spytz in .)세계 랭킹 1 위오피스타공식 웹사이트
macOS 10.12를 위한 새로운 시계 가 추가되었습니다. (Contributed by Joannah Nanjekye in .)
모듈은 몇 가지 새로운 기능을 통합했습니다:
키별 형이 있는 딕셔너리 형. 와 를 참조하십시오. TypedDict는 문자열 키만 사용합니다. 기본적으로, 모든 키가 있어야 합니다. 키를 선택적으로 만들려면 “total=False”를 지정하십시오:
리터럴 형. 과 을 참조하십시오. Literal 형은 매개 변수나 반환 값이 하나 이상의 특정 리터럴 값으로 제한됨을 나타냅니다:
“최종(final)” 변수, 함수, 메서드 및 클래스. , 및 을 참조하십시오全球排名第一오피스타공식 사이트 포털. final 한정자는 정적 형 검사기에 서브 클래싱, 재정의 또는 재대입을 제한하도록 지시합니다:
프로토콜 정의. , 및 을 참조하십시오. 와 같은 간단한 ABC는 이제 서브 클래스입니다.
새 프로토콜 클래스 .
새 함수 과 .
모듈은 릴리스를 사용하도록 업그레이드되었습니다.
새 함수 를 문자열이 특정 정규화 형식인지 확인하는 데 사용할 수 있습니다. 종종 실제로 문자열을 정규화하는 것보다 훨씬 빠릅니다. (Contributed by Max Belanger, David Euresti, and Greg Price in and ).
의 비동기 버전을 지원하는 이 추가되었습니다. 테스트를 위해 적절한 새로운 assert 함수들이 추가되었습니다. (Contributed by Lisa Roach in ).
과 에 대한 정리를 지원하기 위해 unittest에 과 를 추가했습니다. (Contributed by Lisa Roach in .)
여러 mock assert 함수는 이제 실패 시 실제 호출의 리스트도 인쇄합니다. (Contributed by Petter Strandmark in .)
모듈은 를 통해 코루틴을 테스트 케이스로 사용하는 지원을 얻었습니다. (Contributed by Andrew Svetlov in .)
예:
는 이제 PowerShell Core 6.1에서 가상 환경을 활성화하기 위한 모든 플랫폼에 스크립트를 포함합니다. (Contributed by Brett Cannon in .)
에 의해 반환된 프락시 객체는 이제 다른 숫자 연산자에 더해 행렬 곱셈 연산자 와 을 지원합니다. (Contributed by Mark Dickinson in .)
DTD 및 외부 엔티티 조회에 대한 완화로서, 과 모듈은 기본적으로 더는 외부 엔티티를 처리하지 않습니다. (Contributed by Christian Heimes in .)
모듈의 메서드는 이름 공간을 무시하는 와 지정된 이름 공간의 모든 태그를 반환하는 와 같은 와일드카드 검색을 지원합니다. (Contributed by Stefan Behnel in .)
모듈은 C14N 2.0을 구현하는 새로운 함수 를 제공합니다. (Contributed by Stefan Behnel in .)
의 대상 객체는 새 콜백 메서드 와 를 통해 이름 공간 선언 이벤트를 수신할 수 있습니다. 또한, 대상은 주석과 처리 명령어에 대한 이벤트를 처리하여 생성된 트리에 포함하도록 구성할 수 있습니다. (Contributed by Stefan Behnel in and .)
는 이제 각 요청과 함께 보낼 HTTP 헤더의 시퀀스를 위한 선택적 headers 키워드 인자를 지원합니다. 무엇보다도, 기본 베이식 인증(basic authentication)에서 더 빠른 세션 인증(session authentication)으로 업그레이드 할 수 있도록 합니다. (Contributed by Cédric Krier in .)