Solución:
Son las comas, no los paréntesis, las que son significativas. El tutorial de Python dice:
Una tupla consta de varios valores separados por comas
Los paréntesis se usan para eliminar ambigüedades en otros lugares donde se usan comas, por ejemplo, lo que le permite anidar o ingresar una tupla como parte de una lista de argumentos.
Consulte la sección Tutorial de Python sobre tuplas y secuencias.
Porque esta es la única forma de escribir un literal de tupla con un elemento. Para los literales de lista, los corchetes necesarios hacen que la sintaxis sea única, pero debido a que las paréntesis también pueden denotar agrupación, encerrar una expresión entre paréntesis no la convierte en una tupla: necesita un elemento sintáctico diferente, en este caso la coma.
Actualizar
Consulte arriba para obtener una respuesta mucho mejor.
Respuesta original
En python, una tupla se indica entre paréntesis.
Las tuplas no se indican entre paréntesis. Cualquier expresión puede encerrarse entre paréntesis, esto no es nada especial para las tuplas. Simplemente sucede que casi siempre es necesario usar paréntesis porque de lo contrario sería ambiguo, por lo que el
__str__
y__repr__
los métodos en una tupla los mostrarán.
Me quedo corregido (todo lo que he estado haciendo hoy. Suspiro).
Por ejemplo:
abc = ('my', 'string')
¿Qué pasa con las tuplas de un solo elemento? La notación entre paréntesis aún se mantiene.
abc = ('mystring',)
Para todas las tuplas, el paréntesis se puede omitir, pero la coma debe dejarse adentro.
abc="mystring", # ('mystring',)
O
abc="my", 'string', # ('my', 'string',)
Entonces, en efecto, ¿qué usted que estábamos haciendo era crear un tupla de un solo elemento a diferencia de una cuerda.
La documentación dice claramente:
Una lista de expresiones que contiene al menos una coma produce una tupla. La longitud de la tupla es el número de expresiones de la lista. Las expresiones se evalúan de izquierda a derecha.