class 方法未返回 python 中的排序列表
class method not returning sorted list in python
class Solution:
def sortedSquares(self, numbs):
n = len(numbs)
for i in range(n):
numbs[i] = numbs[i] * numbs[i]
return numbs.sort()
sol = Solution()
nums = [-4,-1,0,3,10]
sol.sortedSquares(nums)
Class 解决方案应该 return 排序列表但 return 什么都没有,我检查了 nums 列表的值我得到了正确的输出但我不知道为什么这个方法不是 returning 排序列表,我尝试通过更改变量声明来解决它,但没有任何帮助。
.sort() returns None
所以,您想使用 sorted
代替:
class Solution:
def sortedSquares(self, numbs):
n = len(numbs)
for i in range(n):
numbs[i] = numbs[i] * numbs[i]
return sorted(numbs)
sol = Solution()
nums = [-4,-1,0,3,10]
sol.sortedSquares(nums)
但如果您仍然想使用 .sort(),只需调用 .sort() 方法,然后 return 麻木:
class Solution:
def sortedSquares(self, numbs):
n = len(numbs)
for i in range(n):
numbs[i] = numbs[i] * numbs[I]
numbs.sort()
return numbs
sol = Solution()
nums = [-4,-1,0,3,10]
sol.sortedSquares(nums)
两种方式都可以。
class Solution:
def sortedSquares(self, numbs):
n = len(numbs)
for i in range(n):
numbs[i] = numbs[i] * numbs[i]
return numbs.sort()
sol = Solution()
nums = [-4,-1,0,3,10]
sol.sortedSquares(nums)
Class 解决方案应该 return 排序列表但 return 什么都没有,我检查了 nums 列表的值我得到了正确的输出但我不知道为什么这个方法不是 returning 排序列表,我尝试通过更改变量声明来解决它,但没有任何帮助。
.sort() returns None
所以,您想使用 sorted
代替:
class Solution:
def sortedSquares(self, numbs):
n = len(numbs)
for i in range(n):
numbs[i] = numbs[i] * numbs[i]
return sorted(numbs)
sol = Solution()
nums = [-4,-1,0,3,10]
sol.sortedSquares(nums)
但如果您仍然想使用 .sort(),只需调用 .sort() 方法,然后 return 麻木:
class Solution:
def sortedSquares(self, numbs):
n = len(numbs)
for i in range(n):
numbs[i] = numbs[i] * numbs[I]
numbs.sort()
return numbs
sol = Solution()
nums = [-4,-1,0,3,10]
sol.sortedSquares(nums)
两种方式都可以。