'NoneType' object has no attribute 'val'?怎么解决

这是力扣中 会提示'NoneType' object has no attribute 'val' 在l1和l2同等数量情况下 为什么会出现这个报错

class Solution:
    def addTwoNumbers(self, l1: Optional[ListNode], l2: Optional[ListNode]) -> Optional[ListNode]:
        p=head=ListNode()
        add=0
        while l1 or l2:
            head.val=(l1.val+l2.val)%10+add
            # add=(l1.val+l2.val)//10
            l1=l1.next if l1 else None
            l2=l2.next if l2 else None
            head.next=ListNode()
            head=head.next
        return p

While 的or改成and

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^