国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

Python列表倒序輸出及其效率詳解

瀏覽:3日期:2022-08-04 13:02:38

Python列表倒序輸出及其效率

方法一

使用Python內置函數reversed()

for i in reversed(arr): pass

reversed返回的是迭代器,所以不用擔心內存問題。

方法二

使用range()倒序

for i in range(len(arr) - 1, -1, -1): pass

方法三

先使用list自帶的reverse()函數,再用range()循環

arr.reverse()for i in range(len(arr)): pass

因為要先倒序,再循環,所以效率會比較低。

方法四

先使用list自帶的sort()函數來倒序,再用range()循環

arr.sort(reverse=True)for i in range(len(arr)): pass

因為要先排序,再循環,所以效率會比較低。

這里不討論Python內置函數sorted(),它的效率比list自帶的sort()函數要慢。

效率

對比代碼

import timearr = [x for x in range(10000000)]arr1 = arr.copy()start = time.process_time()for i in reversed(arr): passend = time.process_time()print(’方法一(reversed):’, end - start)start = time.process_time()for i in range(len(arr) - 1, -1, -1): passend = time.process_time()print(’方法二(range倒序):’, end - start)start = time.process_time()arr.reverse()for i in range(len(arr)): passend = time.process_time()print(’方法三(先reverse再range):’, end - start)start = time.process_time()arr1.sort(reverse=True)for i in range(len(arr1)): passend = time.process_time()print(’方法四(先sort再range):’, end - start)

對比結果

數組長度為一百萬時(跑了三次):

Python列表倒序輸出及其效率詳解

Python列表倒序輸出及其效率詳解

Python列表倒序輸出及其效率詳解

數組長度為一千萬時(跑了兩次):

Python列表倒序輸出及其效率詳解

Python列表倒序輸出及其效率詳解

數組長度為一億時(跑了兩次):

Python列表倒序輸出及其效率詳解

Python列表倒序輸出及其效率詳解

結論

效率:方法一 > 方法二 > 方法三 > 方法四

然而并不差多少emmm

但還是盡量使用迭代器吧,數據量很大的時候不用迭代器的話有可能會占用過多的內存。

到此這篇關于Python列表倒序輸出及其效率詳解的文章就介紹到這了,更多相關Python列表倒序輸出及其效率內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 新郑市| 凤城市| 永济市| 翼城县| 乌什县| 永宁县| 邯郸县| 新建县| 临泽县| 西宁市| 盱眙县| 天津市| 永宁县| 曲靖市| 沁水县| 乳山市| 武穴市| 密云县| 河东区| 镇康县| 获嘉县| 平凉市| 磴口县| 酉阳| 普兰店市| 永嘉县| 普定县| 赤水市| 威海市| 台湾省| 马山县| 灌南县| 稷山县| 镇平县| 新乐市| 湘潭县| 霸州市| 青海省| 陆河县| 合肥市| 红原县|