• 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

  • 相关阅读:
    centos 6.5 添加静态ip
    质数因子
    sizeof 和 strlen 的区别
    C++输入带空格的字符串
    字符集合
    汽水瓶
    算法汇总
    Word目录生成
    0-1背包问题的动态规划法与回溯法
    vue父元素调用子组件的方法报undefined
  • 原文地址:https://www.cnblogs.com/PythonChan/p/6213675.html
Copyright © 2020-2023  润新知