建立列表的幾種方式及其效能比較

2021-08-10 12:11:52 字數 986 閱讀 8753

python內建的兩種型別列表(list)和字典(dict)不屬於基本的資料型別。我在這兒列舉了幾種建立列表(list)的方式以及這些方式時間複雜度的比較,在計算時間複雜度時使用了time.timer類。

建立列表的幾種方式總結

# range函式變列表

deftest1

(): li = list(range(10000))

# 列表生成式

deftest2

(): li = [i for i in range(10000)]

deftest3

(): li =

for i in range(10000):

# 列表相加操作

deftest4

(): li =

for i in range(10000):

li += [i]

# extent方法

deftest5

(): li =

for i in range(10000):

li.extent([i])

timeit模組

timeit測試一小段python**的執行速度。

class timeit.timer(stmt=』pass』, setup=』pass』, timer=)

stmt引數表示要執行的**,是字串形式

setup引數是為了執行**而需要的配置環境,咱這裡就是從本模組中匯入相應的函式

timeit.timer.timeit(number=10000)

表示是timeit這個模組中的timer類中的例項方法timeit,其中形參是總共測試了多少次,返回值是測試的平均值

例如:

t1 = timeit.timer('test1()', 'from __main__ import test1')

print(t1.timeit(number=10000))

幾種toString的效能比較

最近要寫乙個批量的介面,由於一次請求的量比較大,所以很多小的點不得不好好考慮效能。乙個object的tostring操作,也是乙個效能考慮點,故自己做了乙個測試,比較了一下可能的幾種tostring的方式。public static void main string args long endtim...

資料列表過濾重複值幾種方法的效能比較

在現代日常應用中資料中有重複值,但我們需要過濾成一條的需求越來越多,那麼如何在程式中設計過濾演算法,同時還要考慮演算法效率,因此這成了值得關注的問題 下面對兩種演算法進行比較 方法一.用hashtable來過濾重複值 protected void button1 click object sende...

建立節點三種方式和效能比較

注意如果頁面已經載入完成,再呼叫會導致頁面重繪 lang en charset utf 8 demotitle head document.write script body html lang en charset utf 8 demotitle head document.body.innerh...