Python

파이썬 3.17에서 삭제 예정

  • datetime:

    • 연도 정보 없이 %e (월의 일수)를 포함하는 포맷 문자열을 사용하는 strptime() 호출이 파이썬 3.15부터 사용 중단되었습니다. (Stan Ulbrych가 gh-70647 에서 기여)

  • collections.abc:

    • collections.abc.ByteString 은 파이썬 3.17에서 제거될 예정입니다.

      런타임에 objbuffer protocol 을 구현하는지 확인하려면 isinstance(obj, collections.abc.Buffer) 를 사용하십시오. 타입 어노테이션에 사용할 때는 Buffer 를 사용하거나 코드에서 지원하는 유형을 명시적으로 지정하는 유니온(예: bytes | bytearray | memoryview)을 사용하십시오.

      ByteString 은 원래 bytesbytearray 모두의 상위 타입 역할을 하는 추상 클래스로 설계되었습니다. 하지만 이 ABC에 메서드가 전혀 없었기 때문에, 어떤 객체가 ByteString 의 인스턴스라는 사실이 객체에 대한 유용한 정보를 제공하지 못했습니다. 또한 memoryview 와 같은 다른 일반적인 버퍼 타입들도 런타임이나 정적 타입 검사에서 ByteString 의 하위 유형으로 인식되지 않았습니다.

      자세한 내용은 PEP 688 을 참조하십시오. (Shantanu Jain이 gh-91896 에서 제안함.)

  • encodings:

    • encodings.normalize_encoding() 에 ASCII가 아닌 인코딩 이름을 전달하는 것은 사용 중단되었으며 파이썬 3.17에서 제거될 예정입니다. (Stan Ulbrych가 gh-136702 에서 기여)

  • webbrowser:

    • webbrowser.MacOSXOSAScript`은 :class:!webbrowser.MacOS`로 대체됨에 따라 사용 중단되었습니다. (gh-137586)

  • typing:

    • 파이썬 3.14 이전에는 구식 유니온(union)이 비공개 클래스 typing._UnionGenericAlias 를 사용하여 구현되었습니다. 이 클래스는 구현에 더 이상 필요하지 않지만, 하위 호환성을 위해 유지되고 있으며 파이썬 3.17에서 제거될 예정입니다. 사용자는 비공개 구현 세부 사항에 의존하는 대신 typing.get_origin()typing.get_args() 와 같은 문서화된 인트로스펙션 도우미를 사용해야 합니다.

    • typing.ByteString 은 파이썬 3.9부터 사용 중단되었으며 파이썬 3.17에서 제거될 예정입니다.

      런타임에 objbuffer protocol 을 구현하는지 확인하려면 isinstance(obj, collections.abc.Buffer) 를 사용하십시오. 타입 어노테이션에 사용할 때는 Buffer 를 사용하거나 코드에서 지원하는 유형을 명시적으로 지정하는 유니온(예: bytes | bytearray | memoryview)을 사용하십시오.

      ByteString 은 원래 bytesbytearray 모두의 상위 타입 역할을 하는 추상 클래스로 설계되었습니다. 하지만 이 ABC에 메서드가 전혀 없었기 때문에, 어떤 객체가 ByteString 의 인스턴스라는 사실이 객체에 대한 유용한 정보를 제공하지 못했습니다. 또한 memoryview 와 같은 다른 일반적인 버퍼 타입들도 런타임이나 정적 타입 검사에서 ByteString 의 하위 유형으로 인식되지 않았습니다.

      자세한 내용은 PEP 688 을 참조하십시오. (Shantanu Jain이 gh-91896 에서 제안함.)

  • tkinter:

    • tkinter.Variable`의 메서드인 :meth:!trace_variable`, trace`(:meth:()!trace_variable`의 별칭), trace_vdelete(), 그리고 trace_vinfo`는 Python 3.14부터 폐지되었으며 Python 3.17에서 제거될 예정입니다. 대신 :meth:()!trace_add`, trace_remove(), 및 :meth:`!trace_info`를 사용하십시오. (Serhiy Storchaka가 :gh:`120220`에서 기여함.)