Pendiente de eliminación en versiones futuras¶
Las siguientes APIs serán eliminadas en el futuro, aunque no hay fecha de planificación exacta para ello.
argparse
: Anidar grupos de argumentos y anidar grupos mutuamente excluyentes queda deprecado.-
bool(NotImplemented)
.Generadores: las firmas
throw(type, exc, tb)
yathrow(type, exc, tb)
están obsoletas: utilicethrow(exc)
yathrow(exc)
en su lugar, la firma de argumento único.Actualmente Python acepta literales numéricos seguidos inmediatamente de palabras clave, por ejemplo,
0in x
,1or x
,0if 1else 2
. Permite expresiones confusas y ambiguas como[0x1for x in y]
(que se puede interpretar como[0x1 for x in y]
o[0x1f or x in y]
). Se genera una advertencia de sintaxis si el literal numérico va seguido inmediatamente de una de las palabras claveand
,else
,for
,if
,in
,is
yor
. En una versión futura, se cambiará a un error de sintaxis. (gh-87999)Compatibilidad con los métodos
__index__()
e__int__()
que retornan un tipo que no es int: estos métodos serán necesarios para retornar una instancia de una subclase estricta deint
.Compatibilidad con el método
__float__()
que retorna una subclase estricta defloat
: será necesario que estos métodos retornen una instancia defloat
.Compatibilidad con el método
__complex__()
que retorna una subclase estricta decomplex
: será necesario que estos métodos retornen una instancia decomplex
.Delegación del método
int()
al__trunc__()
.Ahora está obsoleto el paso de un número complejo como argumento real o imag en el constructor
complex()
; solo debe pasarse como un único argumento posicional. (Contribución de Serhiy Storchaka en gh-109218.)
calendar
: Las constantescalendar.January
ycalendar.February
han quedado obsoletas y han sido reemplazadas porcalendar.JANUARY
ycalendar.FEBRUARY
. (Contribución de Prince Roshan en gh-103636.)codeobject.co_lnotab
: use el métodocodeobject.co_lines()
en su lugar.-
utcnow()
: usedatetime.datetime.now(tz=datetime.UTC)
.utcfromtimestamp()
: usedatetime.datetime.fromtimestamp(timestamp, tz=datetime.UTC)
.
gettext
: El valor plural tiene que ser un entero.-
El parámetro debug_override de
cache_from_source()
queda obsoleto: use el parámetro optimization en su lugar.
-
Interfaz de tupla
EntryPoints
.None
implícito en valores retornados.
logging
: el métodowarn()
ha quedado obsoleto desde Python 3.3, usewarning()
en su lugar.mailbox
: El uso del modo de entrada y texto StringIO está obsoleto, use BytesIO y el modo binario en su lugar.os
: Llamando aos.register_at_fork()
en procesos multi-hilos.pydoc.ErrorDuringImport
: El valor de tupla para el parámetro exc_info queda obsoleto, use una excepción en su lugar.re
: Ahora se aplican reglas más estrictas para las referencias numéricas de grupos y los nombres de grupos en expresiones regulares. Ahora solo se aceptan secuencias de dígitos ASCII como referencia numérica. El nombre de grupo en patrones de bytes y cadenas de reemplazo ahora solo puede contener letras y dígitos ASCII y guiones bajos. (Contribución de Serhiy Storchaka en gh-91760.)Módulos
sre_compile
,sre_constants
ysre_parse
.shutil
: el parámetro onerror dermtree()
queda obsoleto en Python 3.12; use el parámetro onexc en su lugar.Opciones y protocolos de
ssl
:ssl.SSLContext
sin argumento de protocolo queda obsoleto.ssl.SSLContext
:set_npn_protocols()
yselected_npn_protocol()
quedan obsoletas: use ALPN en su lugar.Opciones
ssl.OP_NO_SSL*
Opciones
ssl.OP_NO_TLS*
ssl.PROTOCOL_SSLv3
ssl.PROTOCOL_TLS
ssl.PROTOCOL_TLSv1
ssl.PROTOCOL_TLSv1_1
ssl.PROTOCOL_TLSv1_2
ssl.TLSVersion.SSLv3
ssl.TLSVersion.TLSv1
ssl.TLSVersion.TLSv1_1
Métodos de
threading
:threading.Condition.notifyAll()
: usenotify_all()
.threading.Event.isSet()
: useis_set()
.threading.Thread.isDaemon()
,threading.Thread.setDaemon()
: use el atributothreading.Thread.daemon
.threading.Thread.getName()
,threading.Thread.setName()
: use el atributothreading.Thread.name
.threading.currentThread()
: usethreading.current_thread()
.threading.activeCount()
: usethreading.active_count()
.
unittest.IsolatedAsyncioTestCase
: queda deprecado retornar un valor que no seaNone
en un caso de prueba.Funciones deprecadas de
urllib.parse
: useurlparse()
en su lugarsplitattr()
splithost()
splitnport()
splitpasswd()
splitport()
splitquery()
splittag()
splittype()
splituser()
splitvalue()
to_bytes()
urllib.request
: los estilosURLopener
yFancyURLopener
para invocar solicitudes quedan obsoletos. Use las nuevas funciones y métodosurlopen()
.wsgiref
:SimpleHandler.stdout.write()
no debería hacer escrituras parciales.xml.etree.ElementTree
: La prueba del valor de verdad de unElement
está obsoleta. En una versión futura, siempre retornaráTrue
. En su lugar, es preferible realizar pruebas explícitaslen(elem)
oelem is not None
.zipimport.zipimporter.load_module()
queda obsoleto: useexec_module()
en su lugar.