 |
|
7
EmdeBoas May 13, 2017 1
...我把数据量调到了 100W 然后试的 In [8]: def test(): ...: array = [] ...: for i in xrange(1000000): ...: year = np.random.randint(100) + 2000 ...: month = np.random.randint(12) + 1 ...: day = np.random.randint(28) + 1 ...: array.append(datetime.datetime(year, month, day)) ...: narray = np.array(array) ...: flag = datetime.datetime(2015, 5, 3) ...: print narray[narray[:]<=flag][-5:] ...:
In [9]: %timeit test() [datetime.datetime(2012, 12, 11, 0, 0) datetime.datetime(2009, 5, 26, 0, 0) datetime.datetime(2014, 6, 12, 0, 0) datetime.datetime(2008, 11, 23, 0, 0) datetime.datetime(2010, 12, 12, 0, 0)] [datetime.datetime(2009, 4, 8, 0, 0) datetime.datetime(2013, 2, 10, 0, 0) datetime.datetime(2008, 2, 4, 0, 0) datetime.datetime(2010, 11, 2, 0, 0) datetime.datetime(2005, 8, 27, 0, 0)] [datetime.datetime(2004, 6, 19, 0, 0) datetime.datetime(2010, 5, 7, 0, 0) datetime.datetime(2012, 5, 15, 0, 0) datetime.datetime(2012, 6, 7, 0, 0) datetime.datetime(2000, 1, 5, 0, 0)] [datetime.datetime(2014, 11, 6, 0, 0) datetime.datetime(2005, 9, 15, 0, 0) datetime.datetime(2008, 11, 5, 0, 0) datetime.datetime(2007, 6, 9, 0, 0) datetime.datetime(2003, 11, 10, 0, 0)] 1 loop, best of 3: 4.18 s per loop
|