簡體   English   中英

計算列表絕對值的最快方法

[英]Fastest way to calculate absolute values of a list

我有一個關於計算列表絕對值的問題。 我寫了一個簡短的代碼來計算列表中每個元素的絕對值,我想知道是否有更快的方法來做到這一點,謝謝!

test_list = [5, -60, 74, -83, -120]
result =  [abs(i) for i in test_list]
print(result)

numpy包是用於在 Python 中進行快速數學運算的包。 它之所以如此之快,是因為它本身實際上並不是用 Python(這是一種非常慢的語言)編寫的,而是用 C(非常快)編寫的,並且非常優化。

安裝 numpy 后:

pip install numpy

這段代碼可以重寫為:

import numpy as np

test_list = np.array([5, -60, 74, -83, -120])
result = np.abs(test_list)
print(result)

對於較大的數組,它會以這種方式工作得更快,但請記住,對於小型數組(如本例),這是不值得的,因為numpy需要一段時間才能導入。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM