Python整数数组排序遇异常:输出为None求排查解决
Python整数数组排序返回None的解决方法
针对
list.sort()方法:
这个方法是原地修改原数组,本身没有返回值(返回None)。如果你直接执行print(my_array.sort()),肯定会输出None。正确步骤是先调用排序方法修改原数组,再打印原数组:my_array = [5, 2, 9, 1] my_array.sort() print(my_array) # 输出 [1, 2, 5, 9]针对
sorted()内置函数:
这个函数会生成并返回新的排序后数组,原数组保持不变。你得到None大概率是写法错误,比如误将sorted()的返回值再调用sort()(比如my_array = sorted(my_array).sort(),这时候sort()返回的None会覆盖新数组)。正确用法是直接接收返回值或打印:my_array = [5, 2, 9, 1] sorted_arr = sorted(my_array) print(sorted_arr) # 输出 [1, 2, 5, 9] # 或者直接打印结果 print(sorted(my_array)) # 输出 [1, 2, 5, 9]
内容的提问来源于stack exchange,提问作者Lucky Number Slevin
相关产品推荐
相关产品推荐

