91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

詳解python中的lambda與sorted函數

發布時間:2020-10-15 23:46:06 來源:腳本之家 閱讀:189 作者:Jaywhenxiang 欄目:開發技術

lambda表達式

python中形如:

lambda parameters: expression

稱為lambda表達式,用于創建匿名函數,該表達式會產生一個函數對象。

該對象的行為類似于用以下方式定義的函數:

def <lambda>(parameters):
	return expression

python中的lambda函數可以接受任意數量的參數,但只能有一個表達式。也就是說,lambda表達式適用于表示內部僅包含1行表達式的函數。那么lambda表達式的優勢就很明顯了:

  1. 使用lambda表達式可以省去單行函數的定義過程,使代碼更加簡潔;
  2. 適用于不需要多次復用的函數

例:

y = lambda x: x*x
print(y(3))
> 9
fx = lambda x, y, z: x+y+z
print(fx(3, 4, 5))
> 12

sorted()

python3.x中sorted函數:

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

sorted函數會根據iterable中的項返回一個新的已排序列表。

其中keyreverse是兩個可選參數,它們都必須指定為關鍵字參數;

key:指定帶有單個參數的函數,用于從iterable的每個元素中提取用于比較的鍵,默認為None,即直接比較元素;

reverse:為一個布爾值,用來指定排序規則,默認為False(升序)。

python2的sorted函數中還有一個參數cmp,python3的sorted中已經沒有這個參數了。

與list.sort()方法不同的是,sorted()是有返回值的,而list.sort()的返回值為None;并且list.sort()只能對list進行排序,而sorted()可以接收任何的iterable

例:

# list
foo = [5, 7, 2, 9, 1]
bzz = sorted(foo)
print(bzz)
# > [1, 2, 5, 7, 9]

print(sorted(foo))
# > [1, 2, 5, 7, 9]

print(sorted(foo, reverse = True))
# > [9, 7, 5, 2, 1]

print(sorted(foo, key = lambda x: x*-1))
# > [9, 7, 5, 2, 1]

# dict
bar = {'java': 14, 'c': 16, 'python': 9, 'cpp': 6, 'csharp': 4}
print(sorted(bar))
# > ['c', 'cpp', 'csharp', 'java', 'python']

print(sorted(bar.items(), key = lambda kv: kv[1], reverse = True))
# > [('c', 16), ('java', 14), ('python', 9), ('cpp', 6), ('csharp', 4)]

以上就是詳解python中的lambda與sorted函數的詳細內容,更多關于python lambda與sorted函數的資料請關注億速云其它相關文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

彰化县| 瓦房店市| 二连浩特市| 马山县| 岑溪市| 区。| 治县。| 峨眉山市| 钟山县| 马山县| 济阳县| 襄垣县| 历史| 揭阳市| 南汇区| 离岛区| 湘潭市| 根河市| 南城县| 蓬溪县| 精河县| 辽中县| 梁山县| 增城市| 三亚市| 乌鲁木齐县| 阿拉善右旗| 全南县| 韶关市| 上思县| 南宁市| 仙桃市| 崇阳县| 珲春市| 仙居县| 商都县| 皋兰县| 绵阳市| 新巴尔虎左旗| 进贤县| 五家渠市|