【问题标题】:Sorting a list through a function in python通过python中的函数对列表进行排序
【发布时间】:2018-08-29 17:52:59
【问题描述】:
def sortt(n):
     return n.sort()

print([1,5,2,3])

它返回none

即使我尝试:

def sortt(n):
    lst = [ ]
    lst = n.sort()
    return lst

print([1,5,2,3]) 

然后也返回none

【问题讨论】:

  • 为什么需要一个函数呢?与其调用sort(n) 并让它返回n.sort(),为什么不首先调用n.sort()?我认为排序函数有用的唯一方法是,如果您有特定的排序算法,例如冒泡排序。

标签: python-3.x list function


【解决方案1】:

lst.sort() 就地改变lst 并返回None

sorted(lst) 将排序后的列表返回给您,同时保持lst 不变。

使用您提供的代码作为模板:

def sort1(arr):
    arr.sort()
    return arr

print(sort1([1,5,2,3]))

输出: [1、2、3、5]

def sort2(arr):
    return sorted(arr)

print(sort2([1,5,2,3])) 

输出: [1、2、3、5]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-10-31
    • 2018-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多