成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

不要在 Python 中使用循環,這些方法其實更棒!

開發 前端
我們知道在 Python 中使用循環速度是很慢,如果你正在處理類似的情況,那該怎么辦呢?

我們知道在 Python 中使用循環速度是很慢,如果你正在處理類似的情況,那該怎么辦呢?

在本文中,我將給大家分享可用于替代 Python 循環的方法和案例:

  • Map
  • Filter
  • Reduce

在開始使用上述函數之前,如果你還不熟悉 lambda 函數,讓我們快速了解一下。

Lambda 函數是常規函數的替代方法。它可以在一行代碼中定義,因此在我們的代碼中占用更少的時間和空間。例如,在下面的代碼中,我們可以看到 lambda 函數的作用。

def multiply_by_2(x):
x*2

lambda 函數

lambda x: x*2

注意:最好使用 lambda 函數而不是常規函數。

1、Map

使用 map 函數,我們可以將函數應用于可迭代對象(列表、元組等)的每個值。

map(function, iterable)

假設我們想在一個列表(可迭代對象)中得到一個正方形的數字。我們將首先創建一個 square() 函數來查找數字的平方。

def square(x):
return x*x

然后,我們將使用 map 函數將 square() 函數應用于輸入數字列表。

input_list = [2, 3, 4, 5, 6]
# Without lambda
result = map(square, input_list)
# Using lambda function
result = map(lambda x: x*x, input_list)
# converting the numbers into a list
list(result)
# Output: [4, 9, 16, 25, 36]

2、Filter

直觀地說,filter 函數用于從可迭代對象(列表、元組、集合等)中過濾掉值。過濾條件在作為參數傳遞給過濾器函數的函數內設置。

filter(function, iterable)

我們將使用 filter 函數來過濾小于 10 的值。

def less_than_10(x):
if x < 10:
return x

然后,我們將使用 Filter 函數將 less_than_10() 函數應用于值列表。

input_list = [2, 3, 4, 5, 10, 12, 14] 
# Without lambda
list(filter(less_than_10, input_list))
# using lambda function
list(filter(lambda x: x < 10, input_list))
# Output: [2, 3, 4, 5]

3、Reduce

Reduce 函數與 map 和 filter 函數有點不同。它迭代地應用于可迭代對象的所有值,并且只返回一個值。

在下面的示例中,通過應用加法函數來減少數字列表。最終輸出將是列表中所有數字的總和,即 15。圖片讓我們創建一個添加兩個輸入數字的addition() 函數。

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

接下來,為了獲得列表中所有數字的總和,我們將把這個加法函數作為參數應用到 reduce 函數。

from functools import reduce
input_list = [1, 2, 3, 4, 5]
# Without Lambda function
reduce(addition, input_list))
# With Lambda function
reduce(lambda x,y: x+y, input_list))
# Output: 15


責任編輯:華軒 來源: Python學習與數據挖掘
相關推薦

2018-07-16 16:29:26

編程函數代碼

2023-09-27 10:19:37

類型video函數

2019-04-15 14:05:56

MySQLUTF-8數據庫

2021-03-29 08:05:15

User項目安全

2023-08-31 09:10:18

JavaScript調試

2021-03-04 21:57:12

Python編程語言計算

2020-06-04 08:10:30

Python字符串開發

2015-10-10 10:36:00

warning category

2020-06-23 14:52:04

Python無用分號語言

2015-04-28 10:35:01

設計

2023-03-20 11:36:28

Linux命令

2018-06-25 14:29:45

MySQLbug數據庫

2021-10-18 10:53:26

Go 代碼技術

2021-03-18 18:51:17

手機應用安全

2023-11-30 09:00:00

TypeScript開發

2017-12-25 05:40:35

信息安全社交網絡大數據

2024-04-15 12:27:00

await面試接口

2025-04-11 11:55:49

2021-04-26 09:33:46

Go Iota語言

2023-01-06 23:21:45

python中替換循環
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美jizzhd精品欧美巨大免费 | 国产精品国产成人国产三级 | 狠狠干天天干 | 麻豆一区一区三区四区 | 欧美精品99 | 日韩欧美专区 | 国产精品亚洲精品日韩已方 | 久久99久久98精品免观看软件 | 日韩视频在线播放 | 成人午夜免费福利视频 | 波波电影院一区二区三区 | 亚洲一区二区三区在线视频 | 亚洲电影免费 | 美日韩精品 | 精品一区二区三区免费视频 | 欧美一级在线观看 | 91精品一区| 久在线视频播放免费视频 | 国产精品久久久久久久 | 在线观看免费国产 | 国产一级片久久久 | 欧美在线播放一区 | 国产精品视频在线观看 | 久久综合久色欧美综合狠狠 | 毛片av免费在线观看 | 国产精品毛片无码 | 国产91久久久久久久免费 | 精品伊人久久 | 国产成人免费视频网站高清观看视频 | 日韩成人在线电影 | 日韩 欧美 综合 | 欧美成人一区二区三区片免费 | 欧美福利一区 | 四虎最新地址 | 国产aaaaav久久久一区二区 | 亚洲成人免费 | 国产精品久久久久久亚洲调教 | 国产精品久久久久久网站 | 在线天堂免费中文字幕视频 | 日韩电影中文字幕 | 久久av网|