精华内容
下载资源
问答
  • Python简单速度测试

    2017-07-03 14:56:00
    刚开始接触python,对其飘逸的语法所“震撼”,与其说是在写代码,还不如说是在说一段代码。  刚开始学吧,写个简单的程序练一下手吧,就写了一个归并排序的算法 def merge(num_list,l_b,l_e,r_b,r_e): temp=[] ...
    刚开始接触python,对其飘逸的语法所“震撼”,与其说是在写代码,还不如说是在说一段代码。
      刚开始学吧,写个简单的程序练一下手吧,就写了一个归并排序的算法
    def merge(num_list,l_b,l_e,r_b,r_e):
    temp=[]
    begin=l_b
    while l_b<=l_e and r_b<=r_e:
    if num_list[l_b] < num_list[r_b]:
    temp.append(num_list[l_b])
    l_b=l_b+1
    else:
    temp.append(num_list[r_b])
    r_b=r_b+1
    while l_b<=l_e:
    temp.append(num_list[l_b])
    l_b=l_b+1
    while r_b<=r_e:
    temp.append(num_list[r_b])
    r_b=r_b+1
    for index in range(0,len(temp)):
    num_list[begin+index]=temp[index]
    def mergeSort(num_list,b,e):
    if b<e:
    mid=int((b+e)/2)
    mergeSort(num_list,b,mid)
    mergeSort(num_list,mid+1,e)
    l_b=b
    l_e=mid
    r_b=mid+1
    r_e=e
    merge(num_list,l_b,l_e,r_b,r_e)
    def main():
    num_list=[5,4,1,7,9,8,6,5,4,7]
    mergeSort(num_list)
    if __name__=="__main__":
    main()
     写完感觉还不错,于是乎上网看看别人用python咋写的。果然出乎我的预料,我仿造其格式,写了一下
    def mergeSort(num_list):
    if len(num_list)<=1: return num_list
    mid=int(len(num_list)/2)
    return merge(mergeSort(num_list[:mid]),mergeSort(num_list[mid:]))
    def merge(l_list,r_list):
    temp_list=[]
    while l_list and r_list:
    temp_list.append(l_list.pop(0)) if l_list[0]<=r_list[0] else temp_list.append(r_list.pop(0))
    return temp_list+l_list+r_list
      短小精悍,刚开始我怀疑 这么写的效率有没有问题啊。因为我原来的算法在函数之间不用传参数,就简单测试一下,再次出乎的预料,通过跑10w次,我原来的算法接近5s,而这个算法不到4秒,好吧,以后还是要使用python的思维写python代码,不过真的很优雅。



    最新内容请见作者的GitHub页:http://qaseven.github.io/
    展开全文
  • python简单速度测试

    2014-06-02 21:52:58
    刚开始学python,真心还不怎么习惯使用python的语法,于是乎,刚开始yo

    刚开始接触python,对其飘逸的语法所“震撼”,与其说是在写代码,还不如说是在说一段代码。

    刚开始学吧,写个简单的程序练一下手吧,就写了一个归并排序的算法

    
    def merge(num_list,l_b,l_e,r_b,r_e):
        temp=[]
        begin=l_b
        while l_b<=l_e and r_b<=r_e:
            if num_list[l_b] < num_list[r_b]:
                temp.append(num_list[l_b])
                l_b=l_b+1
            else:
                temp.append(num_list[r_b])
                r_b=r_b+1
        while l_b<=l_e:
            temp.append(num_list[l_b])
            l_b=l_b+1
        while r_b<=r_e:
            temp.append(num_list[r_b])
            r_b=r_b+1
        for index in range(0,len(temp)):
            num_list[begin+index]=temp[index]
                
    
    def mergeSort(num_list,b,e):
        if b<e:
            mid=int((b+e)/2)
            mergeSort(num_list,b,mid)
            mergeSort(num_list,mid+1,e)
            l_b=b
            l_e=mid
            r_b=mid+1
            r_e=e
            merge(num_list,l_b,l_e,r_b,r_e)
    
        
    
    
    def main():
        num_list=[5,4,1,7,9,8,6,5,4,7]
        mergeSort(num_list)
    if __name__=="__main__":
        main()

    写完感觉还不错,于是乎上网看看别人用python咋写的。果然出乎我的预料,我仿造其格式,写了一下

    def mergeSort(num_list):
        if len(num_list)<=1: return num_list        
        mid=int(len(num_list)/2)
        return merge(mergeSort(num_list[:mid]),mergeSort(num_list[mid:]))
    
    def merge(l_list,r_list):
        temp_list=[]
        while l_list and r_list:      
                temp_list.append(l_list.pop(0)) if l_list[0]<=r_list[0] else temp_list.append(r_list.pop(0))
        return temp_list+l_list+r_list

    短小精悍,刚开始我怀疑 这么写的效率有没有问题啊。因为我原来的算法在函数之间不用传参数,就简单测试一下,再次出乎的预料,通过跑10w次,我原来的算法接近5s,而这个算法不到4秒,好吧,以后还是要使用python的思维写python代码,不过真的很优雅。


    展开全文
  • Shell和Python脚本测试数据库读写速度
    #!/bin/bash


    START_TIME=`date +%s`
    curl  -k -X POST -d '{"attrs":["cn"],"filter":"(&(objectClass=groupOfNames)(groupName=autotest))" }'   https://cn=mailcontrol%20\(admin\),account=1,dc=blackspider,dc=com:7Nz+BXcOXW3ZTXgZptPmRg@wrest:8085/rs/v-1/search
    END_TIME=`date +%s`
    COST1=$((END_TIME-START_TIME))


    START_TIME=`date +%s`
    curl  -k -X POST -d '{"filter":"(&(objectClass=person)(mail=test_enduser_68@websense.com))" }'   https://cn=mailcontrol%20\(admin\),account=1,dc=blackspider,dc=com:7Nz+BXcOXW3ZTXgZptPmRg@wrest:8085/rs/v-1/search
    END_TIME=`date +%s`
    COST2=$((END_TIME-START_TIME))


    START_TIME=`date +%s`
    curl -k -X GET https://cn=mailcontrol%20\(admin\),account=1,dc=blackspider,dc=com:7Nz+BXcOXW3ZTXgZptPmRg@wrest:8085/rs/v-1/ou-devices/udid-4B6D5E40DFB22BD57EC4AF54DA1F297A3221389B2
    END_TIME=`date +%s`
    COST3=$((END_TIME-START_TIME))


    START_TIME=`date +%s`
    curl -k --user "cn=mdm-service (admin),account=1,dc=blackspider,dc=com:7Nz+BXcOXW3ZTXgZptPmRg" https://cog01o:8085/rs/v-1/search -X POST -d '{"base":"account=87","filter":"(&(objectClass=hostedUser)(mail=test_enduser_2@websense.com))"}'
    END_TIME=`date +%s`
    COST4=$((END_TIME-START_TIME))


    echo "Time cost to query the group in RS cost: $COST1 seconds!"
    echo "Time cost to query the enduser in RS cost: $COST2 seconds!"
    echo "Time cost to query the device info. in RS cost: $COST3 seconds!"

    echo "Time cost to query the PAC URL in RS cost: $COST4 seconds!"


    #!/bin/bash


    START_TIME1=`date +%s`
    #START_TIME1=`date +%N`
    #echo $START_TIME1
    curl -k -X POST https://cn=mailcontrol%20\(admin\),account=1,dc=blackspider,dc=com:7Nz+BXcOXW3ZTXgZptPmRg@wrest:8085/rs/v-1/bulk -d '[{"method":"modify","dn":"udid=4B6D5E40DFB22BD57EC4AF54DA1F297A3235436B14049,ou=devices,dc=blackspider,dc=com","params":[{"values":0,"attribute":"mdmDeviceId","type":"replace"}]}]'
    END_TIME1=`date +%s`
    #END_TIME1=`date +%N`
    #echo $END_TIME1
    COST1=$((END_TIME1-START_TIME1))


    START_TIME2=`date +%s`
    #START_TIME2=`date +%N`
    #echo $START_TIME2
    curl  -k -X POST https://cn=mailcontrol%20\(admin\),account=1,dc=blackspider,dc=com:7Nz+BXcOXW3ZTXgZptPmRg@wrest:8085/rs/v-1/ou-devices/udid-4B6D5E40DFB22BD57EC4AF54DA1F297A3235436B14049 -d '{"method":"modify","params":[{"values":0,"attribute":"mdmDeviceId","type":"replace"}]}'
    END_TIME2=`date +%s`
    #END_TIME2=`date +%N`
    #echo $END_TIME2
    COST2=$((END_TIME2-START_TIME2))


    echo "Time cost to update device info. in RS with bulk cost: $COST1 seconds!"
    echo "Time cost to update device info. in RS cost with NON-bulk: $COST2 seconds!"

    -------------------------------------------------------------------------------------------------------------------------------------------------

    import os
    import json
    import sys
    import time


    sys.path.append("/opt/mdmi/modules")
    from hosteddb.hosted_device import HostedDevice


    class testRSvlv():


    def get_devices(self):
    '''
    get devices from RS, return all the devices for vlv query time cost
    '''
    device = HostedDevice()
    rtn = 1
    page_num = 0
    page_size = 500
    while rtn > 0:
    starttime = time.time()
    result = device.do_get_many(page_num, page_size, 'devicePlatform')
    endtime = time.time()
    sec_cost = endtime - starttime
    val = json.loads(result.content)
    rtn = len(val)
    print "vlv query device info. from RS,  page index: %d, %d devices, time cost is %d seconds" % (page_num, rtn, sec_cost)
    page_num += 1


    if __name__ == '__main__':
    vlv = testRSvlv()
    vlv.get_devices()

    展开全文
  • 速度测试仪 Windows上基于python的Internet速度测试脚本 根据此处提供的说明: : 相关性:必须设置Python speedtest-cli%PYTHON_HOME%env var。
  • python性能测试

    2021-03-06 15:26:35
    python中,也提供了一些性能测试的标准库。 timeit timeit,用于测量少量代码片段的执行时间。基本算法思路是执行较多的次数,从中选取最小平均值。 将代码循环执行多次(number, -n),以便有足够长的统

    性能测试

    编写程序完毕后,一般需要考虑下其时间复杂度和空间复杂度。随着内存的增大以及服务器计算能力的提升,大多数情况是不会遇到时间不满足要求,空间不满足要求的问题,而对于某些特殊场景下就需要考虑程序运行耗费时间,比如服务接口时候需要考虑请求响应速度,对于移动设备而言,要考虑内存空间大小。在python中,也提供了一些性能测试的标准库。

    timeit

    timeit,用于测量少量代码片段的执行时间。基本算法思路是执行较多的次数,从中选取最小平均值。

    • 将代码循环执行多次(number, -n),以便有足够长的统计时间;
    • 将上述步骤循环执行多次(repeat, -r), 获取足够多的统计采样;
    • 从上述步骤的结果中选取耗时最短的采样,计算单词平均值。
    python -m timeit -n 10 -r 3 -s "import time" "time.sleep"
    

    10 loops, best of 3: 1 sec per loop

    上述命令集合了两个过程:

    • timeit.timeit
    • timeit.repeat

    profile

    profile模块用于测量执行过程中函数的执行时间和调用次数

    def sum(m):
    	n = 0
    	for i in range(m):
    		n += i
    	return n
    
    def main():
    	for i in range(3):
    		sum(1000000)
    	
    	n = 0
    	for i in range(1000000):
    		n += i
    
    if __name__ == "__main__":
    	main()
    

    终端执行

    python -m cProfile -s cumtime test.py
    

    在这里插入图片描述
    其中参数意思:

    • ncalls: 被调用的次数
    • tottime: 总执行时间
    • precall:tottime / ncalls
    • cumtime: 执行总耗时, 包括调用子函数
    • percall:cumtime / ncalls

    line_profiler

    line_profiler 可以对函数内的代码逐行进行测试

    首先安装:pip install line_profiler

    def test(n):
        a = []
        for i in range(n):
            a.extend([1] * (10 ** 6))
        return a
    
    def run():
        a = test(2)
        return a
    

    在这里插入图片描述

    • Line: 函数内源码的行号
    • Hits:执行次数
    • Time:总计执行次数
    • Per Hit: 单词执行的平均时间
    • % Time: 占总耗时的百分比
    • Line Contents: 源代码

    memory_profiler

    memory_profiler 用于逐行分析代码内存占用。
    首先安装:pip install memory_profiler

    @profile
    
    def test():
        a = [1] * (10 ** 6)
        b = [2] * (2 * 10 ** 7)
        del b
        return a
        
    
    if __name__ == "__main__":
        test()
    

    python -m memory_profiler memory_test.py
    在这里插入图片描述

    • Mem usage: 执行程序后,解释器内存使用总量
    • Increment: 相对于上一行的内存使用增量;

    参考

    展开全文
  • SelenIum + python 页面加载速度测试

    千次阅读 2019-06-04 09:19:50
    如果页面把缓存清除了在加载就能测试出页面加载速度。   我的标题写的是用Selenium 来测试出结果,那也就是说是通过自动化来完成,那么怎么代码怎么写呢??? 废话不多说了,直男直接看代码!!  ...
  • 平均上传速度: %d k/s " % (http_speed_upload / 1024 )) print ( " 平均下载速度: %d k/s " % (http_speed_downlaod / 1024 )) if __name__ == ' __main__ ' : test_url = ' www.baidu.com ' ...
  • 一套用于衡量各种Python并发方法速度测试。 该套件测试: CPU绑定操作 I / O绑定操作 CPU和I / O操作的混合 每个测试包含5个部分: 顺序执行(用于比较)。 多处理池执行(经典的Python多处理) 多线程池执行...
  • python测试list,set,dict查询速度 测试代码 import datetime num = 10000000 data_list = list(range(num)) def dict_test(data_list): data_dict = {i: i for i in data_list} for i in range(num): if data...
  • 添加Python包装器测试函数运行速度,见代码: #coding:utf-8 #timethis.py #测试函数运行时间 import time from functools import wraps def timethis(func): ''' Decorator that reports the execution time. ...
  • 图片读取速度测试及加速1、各类python包读取图片接口测试2、通过多核进行加速读取3、参考 机器学习深度学习的发展意味着大批量的读取数据变得越来越多,读取速度也强调越来越快,本着研究一下各框架的读取速度进行...
  • 打字速度测试仪 :keyboard: (游戏)使用Python构建
  • 其中第四章:Bomb Catcher游戏中,测试打字速度的程序代码严重有误。 改程序屏幕上随机显示一个字母,按键输入该字母后随机显示下一个,计算平均一分钟可以输入多少个字母,原代码中计算速度的一块...
  • python 测试代码执行速度 简单代码

    千次阅读 2018-05-24 08:49:12
    import time rpes = 10000 repsList = range(rpes) def timer(func, *args, **kargs): start = time.clock() for i in repsList: ret = func(*args, **kargs) elapsed = time.clock() - star...
  • 链接:https://pan.baidu.com/s/1sKNv4YdHn39jOandMpqVsw 提取码:nl1r 直接运行 speedtest.py
  • 通过该自动化脚本,自需要run一下或者命令行运行脚本即可实现美团瓦力多渠道打包,打包速度很快。配置信息十分简单,代码中已经注释十分详细。可以自定义输出文件路径,可以修改多渠道配置信息,简单实用。
  • 速度 pylibmc > python-libmemcached> python-memcache。 备注:当set值为python dict时,  python-libmemcached> pylibmc 转载于:https://my.oschina.net/toil/blog/368619
  • 接口就是连接前后台,由于前端开发和后端开发的速度可能不一样,例如后端开发好了,但是前端没有开发。那么我们是不是就不需要测试呢?一般我们大部分人都是做功能测试,很多是界面的功能测试。如果你理解了接口测试...
  • python工具来测试两个设备之间的连接速度 用法:作为服务器启动:./wifibench.py​​ -s 作为服务器在特定端口上启动:./wifibench.py​​ -s -p 3050 以客户端身份启动:./wifibench.py​​ -c主机./wifibench.py...
  • 测试代码如下: import timeit,time from sys import getsizeof as Size from collections import OrderedDict import random List_Test = list(range(5000)) print(The Size of List is : {}.format(Size(List_Test...
  • 测试环境: Intel Xeon 2.4G四核心 2.5G内存 Server 2003 Enterprise Edition Service Pack 2 Oracle9i Enterprise Edition 9.2.... python-2.5.2 组件cx_Oracle-4.3.1-win32-9i-py25 建立测试表: [co...
  • timeit,Timer(stmt=‘pass’, setup...Timer:测量小段代码执行速度的类 stmt:参数是要测试的代码语句(statment) setup:参数是运行代码时需要的设置 timer:定时器函数 """列表的操作""" def test1(): l = [] ...
  • Java Go python 运行速度对比系统环境System: CentOS Linux release 7.7.1908Memory: 2GCPU: 1 * Intel(R) Xeon(R) CPU E5-2682 v4 @ 2.50GHzJava: 1.8.0_131Python: Python 3.7.3Golang: go1.13.3 linux/amd64测试...
  • 可以看到,13000次访问测试,列压缩稀疏矩阵csc是非常慢的,而链表稀疏矩阵lil则在50ms内就完成。因此在需要对稀疏矩阵的元素值做大量访问时,首先将待访问的稀疏矩阵做一个转换 sp.tolil() 是非常必要的。
  • 如果您具有使用BigQuery API的Python代码,则可以使用tinyquery使自动化测试速度更快,更可靠,并且运行时不会麻烦。 仍然有很多遗漏的部分,但是由于可以将其用于某些生产规模的BigQuery管道,因此填充了足够的...
  • pynetcheck - 实现有计划的ping检查和带有数据持久性的速度测试

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,814
精华内容 725
关键字:

python速度测试

python 订阅