zoukankan      html  css  js  c++  java
  • python基本语法1.5--调用numpy库的性能影响

    import timeit
    
    sum_by_for = """
    for d in data:
        s += d
    """
    
    sum_by_sum = """
    sum(data)
    """
    
    sum_by_numpy_sum = """
    import numpy
    numpy.sum(data)
    """
    
    def timeit_using_list(n, loops):
        list_setup = """
    data =[1] * {}
    s = 0
    """.format(n)
        print('list result:')
        print(timeit.timeit(sum_by_for, list_setup, number = loops))
        print(timeit.timeit(sum_by_sum, list_setup, number = loops))
        print(timeit.timeit(sum_by_numpy_sum, list_setup, number = loops))
    
    def timeit_using_array(n, loops):
        array_setup = """
    import array
    data = array.array('L', [1] * {})
    s = 0
    """.format(n)
        print('array result:')
        print(timeit.timeit(sum_by_for, array_setup, number = loops))
        print(timeit.timeit(sum_by_sum, array_setup, number = loops))
        print(timeit.timeit(sum_by_numpy_sum, array_setup, number = loops))
    
    def timeit_using_numpy(n, loops):
        numpy_setup = """
    import numpy
    data = numpy.array([1] * {})
    s = 0
    """.format(n)
        print('numpy result:')
        print(timeit.timeit(sum_by_for, numpy_setup, number = loops))
        print(timeit.timeit(sum_by_sum, numpy_setup, number = loops))
        print(timeit.timeit(sum_by_numpy_sum, numpy_setup, number = loops))
    
    if __name__ == '__main__':
        timeit_using_list(30000, 500)
        timeit_using_array(30000, 500)
        timeit_using_numpy(30000, 500)
  • 相关阅读:
    是否需要有代码规范
    结对同伴作业复审
    个人作业-四则运算生成
    个人博客-week7
    个人博客作业Week3
    结对编程项目总结
    个人项目总结
    个人博客作业Week2
    第二次结对作业
    个人作业3——个人总结(Alpha阶段)
  • 原文地址:https://www.cnblogs.com/xiaoyingying/p/7689848.html
Copyright © 2011-2022 走看看