es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Sumar dos números – Python – Leetcode – AttributeError: El objeto ‘ListNode’ no tiene el atributo ‘reverse’.

Estoy tratando de resolver este problema en [LeetCode]

Cuando copio mi código en PyCharm, funciona correctamente. Sin embargo, cuando lo envío a LeetCode, recibo este error:

AttributeError: el objeto ‘ListNode’ no tiene el atributo ‘reverse’ l1.reverse()

¿Alguien puede verificar si mi código es incorrecto o si el problema tiene algo que ver con el IDE de LeetCode?

Aquí está mi código:

Definición para una lista enlazada unitaria

class ListNode(object):

def init(self, val=0, next=None):

self.val = val

self.next = next

class Solution(object):
def addTwoNumbers(self, l1, l2):
“””
:type l1: ListNode
:type l2: ListNode
:rtype: ListNode
“””
l1.reverse()
l2.reverse()

    s1 = [str(x) for x in l1]
    res1 = int("".join(s1))

    s2 = [str(x) for x in l2]
    res2 = int("".join(s2))

    ans = res1 + res2

    ans1 = [int(x) for x in str(ans)]

    ans1.reverse()

    return(ans1)

Ajusté el código un poco para PyCharm, pero este es el código que realmente funciona:

l1 = [4,5,6]
l2 = [6,2,3]

l1.reverse()
l2.reverse()

s1 = [str(x) for x in l1]
res1 = int(“”.join(s1))

s2 = [str(x) for x in l2]
res2 = int(“”.join(s2))

ans = res1 + res2

ans1 = [int(x) for x in str(ans)]

ans1.reverse()
print(ans1)

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Parece que el problema está en la línea l1.reverse(). reverse() es un método para listas de Python, no para objetos ListNode. Deberías ser capaz de resolver el problema sin usar reverse().

Comments are closed.