Saltar al contenido

¿Cómo crear una tupla de una tupla vacía en Python?

No dejes de divulgar nuestro espacio y códigos con tus amigos, danos de tu ayuda para ampliar nuestra comunidad.

Solución:

La tupla vacía es () (o el más detallado y más lento tuple()), y una tupla con un solo elemento (como el número entero 1), llamado singleton (ver aquí y aquí) es (1,). Por lo tanto, la tupla que contiene solo la tupla vacía es

((),)

Aquí hay algunos resultados que muestran que funciona:

>>> a=((),)
>>> type(a)

>>> len(a)
1
>>> a[0]
()
>>> type(a[0])

>>> len(a[0])
0

no me sorprende esto (()) no funcionó, ya que los paréntesis exteriores se interpretan como eso: paréntesis. Asi que (()) == ()al igual que (2) == 2. Esto debería funcionar, sin embargo:

((),)

tuple() es la única tupla vacía genuina, pero () y ((),) crean una tupla de longitud 1 que contiene una tupla de longitud 0, pero no una tupla de longitud cero.

Si desea una respuesta a “¿cómo puedo crear un vacío (o longitud cero) tupla… Encontré esta publicación con la búsqueda “cómo crear una tupla vacía”, luego me di cuenta de que esta no era la misma pregunta, pero podría confundirse con esa pregunta (como lo hace la búsqueda), así que Pensé que proporcionaría la respuesta a:

¿Cómo se crea simplemente una tupla vacía?

la pregunta original podría confundirlo, ya que las respuestas originales son casi lo suficientemente buenas como una tupla vacía, pero fallan una prueba.

(), creará una tupla ‘vacía’ como se sugiere en las respuestas anteriores con ((),) que también funcionará, al igual que ((( ((( (),))) ))) de hecho, puede usar cualquier número de corchetes externos usted elige, solo funcionan como corchetes. Sin embargo, Python, al imprimir una tupla, agrega un conjunto de corchetes externos.

los corchetes vacíos son una representación no estándar de ‘sin valor’ y agregar la coma final crea una tupla de ‘sin valor’. Pero es una tupla con una entrada ‘sin valor’, no una tupla vacía.

Nota: Esta no es una tupla de longitud cero, como también han mostrado los otros ejemplos. La tupla exterior es una tupla con un valor, solo que ese valor lo tiene, es la tupla vacía. Así que esto crea una tupla vacía en el interior otra tupla, y la otra tupla es no vacío. Para true tupla vacía por sí misma, use tuple() aunque el (), se comporta algo parecido, no es del todo correcto.

>>>  a = (),
>>> type(a)

>>> len(a)
1
>>> a
((),)
>>> len(a[0])  # the inside tuple is empty, just not the outside one
0

Del mismo modo, para una tupla de longitud 1 pero con valor (de cero en el caso de b, y “” para el ejemplo con c)

>>> b = 0,
>>> type(b)

>>> len(b)
1
>>>b
(0,)
# now with an empty string
>>> c = "",
>>> type(c)

>>> len(c)
1
>>>c
('',)
>>> len (c[0])  # same len of c[0] as with 'empty' tuple
0

Por lo tanto, los corchetes exteriores se incluyen para mostrar una tupla, pero en realidad no forman parte de la tupla ni son necesarios para crear la tupla.

Sin embargo, todos estos métodos de corchetes no son un vacío real en el nivel externo, que es algo que también tiene casos de uso.

>>> a = ((),)  # extra brackets just to show same as other answers
>>> len(a)
1
>>> if a:
   print("not empty")
not empty
>>> e = tuple()
>>> len(e)
0
>>> type(e)

>>> if e:
   print("not empty")

>>> # note...did not print...so e acts as false as an empty tuple should

Entonces, si realmente necesita una tupla vacía genuina, use tuple()pero si todo lo que necesita es lo suficientemente cerca, puede usar (), o ((),)

Si conservas algún titubeo o disposición de acrecentar nuestro ensayo puedes añadir una apostilla y con gusto lo leeremos.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *