讨论/题目交流/请教一下,为什么执行代码的时候没有问题,提交的时候却报错/
请教一下,为什么执行代码的时候没有问题,提交的时候却报错

以下代码执行的时候没有问题,提交的时候却报错,这是为什么,应该怎么解决呢?

python代码

class Solution(object):
    def reverse(self, x):
        num_list = list(str(x))
        new_list = []
        get_len = len(num_list)
        x=0

        if num_list[len(num_list)-1] == '0':
            num_list.pop(len(num_list)-1)
            get_len = len(num_list)

        for i in range(1, get_len+1):
            new_list.append(num_list[-i])
            if '-' in new_list:
                new_list.insert(0, '-')
                new_list.pop()
        
        x = int(''.join([str(i) for i in new_list]))
        return x

solution = Solution()
print(solution.reverse(123))

提交时的错误信息

ValueError: invalid literal for int() with base 10: ''
    x = int(''.join([str(i) for i in new_list]))
Line 18 in reverse (Solution.py)
    ret = Solution().reverse(param_1)
Line 47 in _driver (Solution.py)
    _driver()
Line 57 in <module> (Solution.py)
展开讨论
maker发起于 2020-05-18
最近编辑于 2020-05-18
共 4 个讨论

有具体的报错信息?执行是具体的一个测试用例而已。提交是好几百个测试用例

1
ValueError: invalid literal for int() with base 10: ''

应该是忘了判断输入为空的情况。

leetcode的执行代码是的玄学,编译器通不过的,他能通过,有明显语法错误他却能正常运行

检查代码严谨性,执行效率,是不是有,死锁,或者无限循环的可能性等等。