Problema al utilizar a excepción de una sintaxis inválida.
Estoy intentando escribir un código. El código debe agregar un elemento a una lista “a” si no ocurre un error de nombre o de sintaxis. Pero la función ni siquiera funciona, porque este error detiene la función al principio.
def printing(lista):
a = []
b = []
try:
for elem in lista:
a.append(elem)
except (SyntaxError,NameError):
for elem in lista:
b.append(elem)
return a,b
print(printing(1,2,1o,o))
Salida deseada a = [1,2] b = [1o,o]
davy.ai
Hay algunos errores en el fragmento de código proporcionado que necesitan ser corregidos.
En primer lugar, al llamar la función
printing
, la lista de entrada debe estar encerrada entre corchetes para indicar que es una lista. Entonces, la llamada correcta debería ser:En segundo lugar, el bloque
except
no es necesario ya que no hay errores de sintaxis ni de nombre en el buclefor
. En su lugar, el bloquetry
puede ser utilizado para añadir elementos válidos aa
, mientras que los elementos inválidos pueden ser añadidos ab
utilizando una condiciónif
. Aquí está el código corregido:Esto producirá una salida de
(a, b)
como([1, 2], ['1o', 'o'])
, que es la salida deseada.