【LeetCode】1929. 数组串联(3)——extend()返回None

问题代码:

class Solution():
    def getConcatenation(self, nums):
        print(nums.extend(nums))


A = Solution()
A.getConcatenation([1, 2, 3])

代码最后的回显为:

[1, 2, 3]
None

Process finished with exit code 0

问题在于:

print(nums.extend(nums))
"""
原因剖析:
extend()方法只是在恰当的位置对原来的列表进行修改,这意味着,该方法不是返回一个修改过的列表,而是直接修改原来的列表;
这对很多方法都适用
所以上面的代码中,print()函数中的nums.extend(nums)只是对nums做了修改,不会有返回值
"""

代码修改:

class Solution:
    def getConcatenation(self, nums: List[int]) -> List[int]:
        nums.extend(nums)
        return nums

最后的返回结果为:

[1, 2, 3, 1, 2, 3]

Process finished with exit code 0
posted @ 2021-12-29 18:06  MoKin_Li  阅读(42)  评论(0编辑  收藏  举报