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

yipeiwu_com6年前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程序设计有所帮助。

相关文章

python3实现逐字输出的方法

如下所示: import sys,time def print_one_by_one(text):     sys.stdout.write("\r "...

python连接MySQL、MongoDB、Redis、memcache等数据库的方法

用Python写脚本也有一段时间了,经常操作数据库(MySQL),现在就整理下对各类数据库的操作,如后面有新的参数会补进来,慢慢完善。 一,python 操作 MySQL:详情见:【ap...

解决csv.writer写入文件有多余的空行问题

在用csv.writer写入文件的时候发现中间有多余的空行。 最早打开方式只是‘w',会出现多余的空行,网上建议使用binary形式‘wb'打开可以解决问题: with open('...

Django中提供的6种缓存方式详解

前言 由于Django是动态网站,所有每次请求均会去数据进行相应的操作,当程序访问量大时,耗时必然会更加明显,最简单解决方式是使用:缓存,缓存将一个某个views的返回值保存至内存或者m...

利用ctypes提高Python的执行速度

前言 ctypes是Python的外部函数库。它提供了C兼容的数据类型,并且允许调用动态链接库/共享库中的函数。它可以将这些库包装起来给Python使用。这个引入C语言的接口可以帮助我们...