• numpy数组及处理:效率对比


    一、处理日期时间

    取系统时间

    from datetime import datetime 
    datetime.now()

    转换成‘2017年9月30日星期六10时28分56秒’格式字符串


    print('{0:%Y}年{0:%m}月{0:%d}日星期{0:%w} {0:%H}时{0:%M}分{0:%S}秒'.format(now))

    ’2018-10-25 22:00‘转换成一个日期时间变量

    date=datetime.now()
    d="2018-10-25 22:00"
    a=date.strptime(d,'%Y-%m-%d %H:%M')
    print(a)
    type(a)

     

    计算两者的间隔

    import datetime
    d1=datetime.datetime(2017,9,30)
    d2=datetime.datetime(2018,10,22)
    (d2-d1).days

    二、问题:

    • 数列:
    • a = a1,a2,a3,·····,an
    • b = b1,b2,b3,·····,bn
    • 求:
    • c = a12+b13,a22+b23,a32+b33,·····+an2+bn3

    1.用列表+循环实现,并包装成函数

    def Sum(n):     
        a=list(range(n))
        b=list(range(0,10*n,4))
        c=[]
        for i in range(len(a)):
            
            c.append(a[i]**2+b[i]**3)
        return c
    print(Sum(5))

    2.用numpy实现,并包装成函数

    import numpy as np
    def Sum2(n):
    a=np.array(range(n))
    b=np.array(range(0,10*n,n))
    s=[]
    for i in range(len(b)):
    s.append(a[i]**2+b[i]**3)
    return s
    print(Sum2(20))
    
     

     

    3.对比两种方法实现的效率,给定一个较大的参数n,用运行函数前后的timedelta表示。

    dt=datetime.now()
    ListSum(5000)
    print(datetime.now()-dt)
    
    dt1=datetime.now()
    npSum(5000)
    print(datetime.now()-dt1)

     

  • 相关阅读:
    UINavigationController详解
    iOS学习之UINavigationController详解与使用
    UIViewController 之LoadView详解
    UIView详解
    iOS UITableView代理方法详解
    iOS中表视图(UITableView)使用详解
    Objective-C葵花宝典第一重(内功篇)--类与对象
    关于UIScrollView事件
    iOS学习--UIScrollView 原理详解
    ios UIView
  • 原文地址:https://www.cnblogs.com/ZHONGmy/p/9828949.html
Copyright © 2020-2023  润新知