zoukankan      html  css  js  c++  java
  • Python几种创建list的方法的效率对比

    我们用 生成一个0到((1万倍n)-1)的list做例子

    Python几种创建list的方法的效率对比

    首先这种方式复杂度为平方级

    '''

    def test1(n):

    lst = []

    for i in range(n*10000):

    lst = lst + [i]

    return lst

    '''

    Python几种创建list的方法的效率对比

    如n=5,平均运行花费3秒2;

    如果n=10的话,平均运行花费飙到14秒9;

    是因为复制一个长度为n的list,本身的复杂度就是线性级的了。

    ###############################################################

    接下来这几种,时间复杂度都是线性级的

    Python几种创建list的方法的效率对比

    ‘’‘

    def test2(n):

    lst = []

    for i in range(n*10000):

    lst.append(i)

    return lst

    def test3(n):

    return [i for i in range(n*10000)]

    def test4(n):

    return list(range(n*10000))

    ’‘’

    Python几种创建list的方法的效率对比我们来对比一下,到底哪个快

    Python几种创建list的方法的效率对比

    测试后可以发现,直接用系统list方法是最快的,然后是列表推导,用list类的append方法排后。

    头条号 PythonChan

  • 相关阅读:
    UI 简单练习(联动实例)
    软件工程与计算机科学
    中文编程
    自我介绍
    曾经的梦想
    即时通讯研究学习
    即时通讯研究学习
    创业
    2015-08-12-火影
    看<后海不是海>的随想
  • 原文地址:https://www.cnblogs.com/PythonChan/p/6213675.html
Copyright © 2011-2022 走看看