重要概念

参数:也叫参变量,是一个变量。

实参:有确定的值的变量。

type(1)

其中 1 就是实参。

形参:定义函数时使用的参数,目的是用来接收调用该函数时传入的参数。

def add (x, y): 
    return x + y

其中 x, y 都是形参,它们并不实际。

sorted 函数

sorted(iterable, *, key=None, reverse=False)

sorted函数中的形参 key,是用来指定在进行比较之前要在每个列表元素上进行调用的函数
也就是说 key 是一个对元素进行处理的函数,它有一个参数就是列表中的元素。

过程如下

决定怎样处理元素,并定义相应函数

def f(x):   #拿每个列表元素的第二个元素来对比
    return x[1]
a = [('A',10), ('B',4)]
sorted(a, key = f)    # f 不需要带括号,困惑了我好久。
                      #带括号就是调用这个函数了,这里只是想赋值

sorted 在获取 a 后,因为 key 被赋值函数 f,所以调用 f 对列表中每个元素进行处理。

对比元素_1 = f(item1)    #调用 key
对比元素_2 = f(item2)    #调用 key

拿处理过的对比元素进行比较,结果:

[('B',4),('A',10)]

这样一切就都清楚了。

sorted(iterable, key = lambda x:x[1])
a.sort(key = lambda x:x[1])

附官方文档

sorted()

https://docs.python.org/zh-cn...
https://docs.python.org/zh-cn...


r3ha
1 声望0 粉丝