成人免费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函數

2023-08-31 09:10:18

JavaScript調試

2019-04-15 14:05:56

MySQLUTF-8數據庫

2021-03-29 08:05:15

User項目安全

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無用分號語言

2023-03-20 11:36:28

Linux命令

2015-04-28 10:35:01

設計

2021-10-18 10:53:26

Go 代碼技術

2018-06-25 14:29:45

MySQLbug數據庫

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

2023-01-06 23:21:45

python中替換循環

2020-01-03 16:40:37

UbuntuPop!_OSLinux
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久最新| 久久久精品欧美 | 国产一区二区精品在线观看 | 69av网| 久久精品99国产精品 | 午夜精品久久久久久 | 综合二区 | 中文字幕亚洲视频 | 久久免费高清 | 国产麻豆乱码精品一区二区三区 | 国产亚洲成av人片在线观看桃 | 国产精品一区二区三 | 国产精品久久久久久久久久久久久久 | av影音在线| 麻豆视频在线免费看 | 免费同性女女aaa免费网站 | 91秦先生艺校小琴 | 久久精品视频免费看 | 日本精品视频一区二区 | 婷婷五月色综合 | h片在线看 | 国产精品视频www | 日韩视频一区二区在线 | 国产成人一区二区三区 | 亚洲成人www| 久久精品手机视频 | 国产精品久久久久久久免费大片 | 91精品国产综合久久精品图片 | 伊人网在线播放 | 999久久 | 一区二区三区亚洲 | 久久激情视频 | 成人精品一区二区三区中文字幕 | 在线观看国产视频 | 国产一区二区三区免费 | 久久久www成人免费精品 | 国产精品a免费一区久久电影 | 成人一区二区三区 | 91超碰在线观看 | xxxxxx国产| 欧美一级在线 |