Python中list查询及所需时间计算操作示例

yipeiwu_com7年前Python基础

本文实例讲述了Python中list查询及所需时间计算操作。分享给大家供大家参考,具体如下:

# -*-coding=utf-8 -*-
#! python2
#filename: list_query
#date: 2018-03-25
#author: guosw
import time
def cost_time(fun):
  def cost(*args,**kwargs):
    stime = time.time()
    x = fun(*args,**kwargs)
    etime = time.time()
    print "function name:",fun.__name__
    print "time cost:",etime-stime
    return x
  return cost
@cost_time
def list_query(_list,_val):
  low = 0
  height = len(i) - 1
  mid = (height - low) // 2
  for n in xrange(height+1):
    if _list[n] == _val:
      return n
  for n in xrange(mid,height+1):
    if _list[n] == _val:
      return n
if __name__ == "__main__":
  i = xrange(100000)
  subscript = list_query(i,9999)
  print subscript

运行结果:

function name: list_query
time cost: 0.00100016593933
9999

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数组操作技巧总结》、《Python字符串操作技巧汇总》、《Python函数使用技巧总结》、《Python入门与进阶经典教程》及《Python数据结构与算法教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

python利用tkinter实现屏保

本文实例为大家分享了python利用tkinter实现屏保的具体代码,供大家参考,具体内容如下 import random import tkinter class RandomB...

Python yield 使用浅析

初学 Python 的开发者经常会发现很多 Python 函数中用到了 yield 关键字,然而,带有 yield 的函数执行流程却和普通函数不一样,yield 到底用来做什么,为什么要...

python使用cPickle模块序列化实例

本文实例讲述了python使用cPickle模块序列化的方法,分享给大家供大家参考。 具体方法如下: import cPickle data1 = ['abc',12,23] #几...

Python中使用语句导入模块或包的机制研究

这篇文章讨论了Python的from <module> import *和from <package> import *,它们怎么执行以及为什么使用这种语法(也许...

Python深入学习之特殊方法与多范式

Python一切皆对象,但同时,Python还是一个多范式语言(multi-paradigm),你不仅可以使用面向对象的方式来编写程序,还可以用面向过程的方式来编写相同功能的程序(还有函...