Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

200
Visualizações
¿Por qué Python no da ningún error cuando las comillas alrededor de una cadena no coinciden?

Empecé a aprender Python recientemente y no entiendo por qué Python se comporta así:

>>> "Está bien"
'OK'
>>> """OK"""
'OK'
>>> "no está bien"
  Archivo "<stdin>", línea 1
    "no está bien'
           ^
SyntaxError: EOL al escanear literal de cadena
>>> "no está bien"""
'no está bien'

¿Por qué no da un error para la última declaración ya que el número de comillas no coincide?

over 4 years ago · Santiago Trujillo
4 Respostas
Responde à pergunta

0

Python usa una implementación similar a la pila para detectar la apertura y el cierre de las comillas. Si sabe qué es una pila, es una estructura de datos, en la que el Último elemento se eliminará primero.

Suponga que su cadena es A = "''" Lo que hace es, por cada comilla simple o comilla doble que encuentre por primera vez, la agregará a la pila, y por cada segundo, la eliminará de la pila, a menos que, por supuesto, """ que se analizará como uno solo

En nuestro ejemplo, A = "''" , iterando sobre él, para los primeros 2 elementos, se agregarán a la pila y para los siguientes 2, se eliminarán.

Entonces, las comillas coincidirán, si y solo si, el número de elementos en la pila al final debe ser cero

over 4 years ago · Santiago Trujillo Relatório

0

El """ final no se reconoce como una comilla triple, sino como un solo " (para cerrar el literal de cadena actual) seguido de una cadena vacía "" ; los dos literales de cadena yuxtapuestos están concatenados. El mismo comportamiento se puede reconocer más fácilmente poniendo un espacio entre el cierre y la apertura " .

 >>> "not OK" "" 'not OK'
over 4 years ago · Santiago Trujillo Relatório

0

"not OK"""

Python interpreta esto como "not OK"+""

Si das "not Ok""ay" , obtendrás el resultado como 'not Okay'

over 4 years ago · Santiago Trujillo Relatório

0

Pensarías que no hay diferencia entre " o ', pero en realidad, Python usa un método codicioso para aceptar entradas.

Una vez que Python ve una cita coincidente, entonces finaliza la declaración.

Es por eso que puedes escribir algo como "'s" "" . Dentro de la cadena hay un ' pero debido a que estás en una cadena, python no genera un error. Luego, después de eso, hay un " seguido de " pero esa es una cadena diferente (vacía).

Si hace algo como "s' entonces Python está buscando el siguiente " antes de ejecutar su comando.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda