【python性能提升方法】教程文章相关的互联网学习教程文章

将字符串编译为Ruby字节码以获得更好的性能 – 比如Python中的compile()【代码】

我有一个字符串(经过身份验证,可信任等),其中包含旨在快速在Ruby循环中运行的源代码.在Python中,我会将字符串编译成抽象语法树,然后将eval()或exec()编译成:# Python 3 example given_code = 'n % 2 == 1' pred = compile(given_code, '<given>', 'eval') print("Passed:", [n for n in range(10) if eval(pred)]) # Outputs: Passing members: [1, 3, 5, 7, 9]Ruby没有编译功能,那么实现这一目标的最佳方法是什么?解决方法:...

Python性能:嵌套列表上的迭代和操作【代码】

问题嘿伙计们.我正在寻找有关python性能的一些建议.关于我的问题的一些背景: 鉴于: > A(x,y)节点网格,每个节点的值从0开始,值为(0 … 255)> N个输入坐标的列表,每个坐标位于范围内的指定位置(0 … x,0 … y)>值Z,用于定义节点数中的“邻域” 增加输入坐标和节点邻居的节点值.网格边缘之外的邻居将被忽略. (没有包装) 基础案例:大小为10241024个节点的网格,具有400个输入坐标和75个节点的范围Z. 处理应为O(x * y * Z * N).我希望...

winkler的Python性能改进请求【代码】

我是一个python n00b,我想要一些关于如何改进算法的建议,以提高这种方法的性能来计算两个名字的Jaro-Winkler距离.def winklerCompareP(str1, str2): """Return approximate string comparator measure (between 0.0 and 1.0)USAGE:score = winkler(str1, str2)ARGUMENTS:str1 The first stringstr2 The second stringDESCRIPTION:As described in 'An Application of the Fellegi-Sunter Model ofRecord Linkage to the 1990 U.S...

Python内置数据类型性能分析【代码】【图】

timeit模块 timeit模块可以用来测试一小段Python代码的执行速度。 class timeit.Timer(stmt=pass, setup=pass, timer=<timer function>) Timer是测量小段代码执行速度的类。 stmt参数是要测试的代码语句(statment); setup参数是运行代码时需要的设置; timer参数是一个定时器函数,与平台有关。 timeit.Timer.timeit(number=1000000) Timer类中测试语句执行速度的对象方法。number参数是测试代码时的测试次数,默认为1000000次。...

在python中读取卫星图像文件时优化性能【代码】

我有一个以带交织像素(BIP)格式存储的多频带卫星图像以及一个单独的头文件.头文件提供了详细信息,例如图像中的行数和列数,以及波段数(可以超过标准3). 图像本身就像这样存储(假设一个5波段图像): [B1] [B2] [B3] [B4] [B5] [B1] [B2] [B3] [B4] [B5] ……等等(基本上5个字节 – 每个频段一个 – 每个像素开始从图像的左上角). 我需要将这些频段中的每一个分离为Python 3.2中的PIL图像(在Windows 7 64位上),目前我认为我正在接近这...

Python列表理解的性能:在`if`部分重建lambda?【代码】

在Python中比较各种等效形式的过滤器(xs,lambda x:x!= el)时,我偶然发现了让我感到惊讶的事情.请考虑以下形式:def method1(xs, el):p = lambda x: x != elreturn [x for x in xs if p(x)]def method2(xs, el):return [x for x in xs if (lambda y: y != el)(x)]我希望Python只构建一次lambda,然后将它存储在一个临时变量中,这样两个表单也可以执行.也许甚至那个方法1会由于名称查找而表现更差. 但是当我对它们进行基准测试时,结...

Python HTTPServer和TCPServer的性能

我花了几天时间试图获得一些关于在Python中使用HTTPServer和/或TCPServer内置库可以获得什么样的性能的硬统计数据. 我想知道是否有人可以给我任何关于如何处理HTTP请求以及它们是否能够在生产环境中或在高流量情况下如果有任何提示或线索可以改善在这些情况下的表现. (假设无法访问像Twisted等外部库) 谢谢.解决方法:这些内置库都不是用于严肃的生产用途.获得真正的实现,例如,从Twisted,Tornado或gunicorn等等,有很多.没有必要坚持...

python – 位向量与布尔值性能列表【代码】

我试图在Python中重现我在一本书中找到的两个例子(最初是用Java编写的). 这两个函数检查字符串是否包含重复的字符.第一个函数使用整数(检查器)作为位向量,而第二个函数只使用布尔列表.我期望使用带有位的功能有更好的性能,但实际上它表现更差. 这是为什么?从Java翻译到Python时,我写错了吗? 注意:为简单起见,我们只使用小写字母(a到z),尤其是位向量函数.import sys import timeitdef is_unique_chars_bit(my_str):checker = 0fo...

python – 实现性能的矢量化【代码】

我想避免在以下代码中使用for循环来实现性能.矢量化适合这种问题吗?a = np.array([[0,1,2,3,4],[5,6,7,8,9],[0,1,2,3,4],[5,6,7,8,9],[0,1,2,3,4]],dtype= np.float32)temp_a = np.copy(a)for i in range(1,a.shape[0]-1):for j in range(1,a.shape[1]-1):if a[i,j] > 3:temp_a[i+1,j] += a[i,j] / 5.temp_a[i-1,j] += a[i,j] / 5.temp_a[i,j+1] += a[i,j] / 5.temp_a[i,j-1] += a[i,j] / 5.temp_a[i,j] -= a[i,j] * 4. / 5. a ...

python – GridSearchCV:所选类的性能指标[不平衡数据集]【代码】

有没有办法对所选类的分数(例如’f1′)优化的参数值运行网格搜索,而不是所有类的默认分数? [编辑]假设这样的网格搜索应该返回一组参数,这些参数仅对选定的类最大化分数(例如“f1”,“准确度”,“回忆”),而不是所有类的总分.这种方法似乎是有用的,例如对于高度不平衡的数据集,当试图构造一个在具有少量实例的类上做出合理工作的分类器时. 具有默认评分方法的GridSearchCV示例(此处:所有类的’f1′):from __future__ import prin...

惊讶于python中的良好递归性能【代码】

我写了这个相当差的Python函数进行素数分解:import mathdef factor(n):for i in range(2, int(math.sqrt(n)+1)):if not n % i:return [i] + factor(n//i)return [n]它按预期工作,现在我对使用迭代方法时性能是否更好感兴趣:def factor_it(n):r = []i = 2while i < int(math.sqrt(n)+1):while not n % i:r.append(i)n //= ii +=1if n > 1:r.append(n)return r但我观察到的(虽然函数给出了相同的结果)是迭代函数需要更长的时间才能...

在巨大的关键字列表中检查单词的最快方法 – Python性能【代码】

感谢您惊人的快速反应. Stackoverflow太棒了! 我需要检查一个单词(或者更确切地说是数千个)是否与包含关键字的dict相匹配. 例如,假设我有一个字符串:“蓬松的狐狸跳了起来.”我需要根据关键字的字符检查字符串的每个单词,如果匹配,则返回所有值. 我创建了一个dict过滤器:( uniqueid表示ie.“lk2m3lk4m2”,rest是’static’.)filters:{ "fox" : [{ 'subscription' : 'uniqueid', 'link' : 'uniqueid' },{ 'subscription' : 'uniqu...

python – 编写CPU绑定脚本以测量粗略的CPU性能【代码】

我编写了一个脚本并在不同的机器上运行它.脚本如下所示def f(n):x = Nonewhile n:x = simple_math(n)n -= 1return xstart = now() f(BIGNUM) print now() - start 在脚本结束时,它会打印完成所需的时间.这是否足以比较不同机器的简单Python脚本的实际CPU速度? 简单来说,我的意思是它不使用多处理模块或任何其他技术来利用多核机器. 这个问题不是关于 >使python程序运行得更快>多处理模块> GIL,I / O效率等>非cPython程序 只...

基于python的性能测试工具–locust【图】

现在有很多的性能测试工具,比如说我们熟悉的loadrunner、jmeter、ab、webbench等等,这些工具如果对一个没用过的朋友来说,学习起来比较不容易,但是如果你能看懂python代码,会写就更好了,就可用尝试一下今天的主角Locust,一款基于python的性能测试工具,它的优点是学习起来比较简单,功能完全自定制,使用比较灵活,支持分布式。 所有的性能测试工具都至少包含这3块: 1、压力产生器,也就是可以指定产...

Python几种并发实现方案的性能比较

偶然看到Erlang vs. Stackless python: a first benchmark,对Erlang和Stackless Python的并发处理性能进行了实验比较,基本结论认为二者有比较相近的性能。我看完产生的问题是,Stackless Python与Python的其他并发实现机制性能又会有多大区别呢,比如线程和进程。因此我采用与这篇文章相同的办法来对Stackless Python、普通Python的thread模块、普通Python的threading模块、普通Python的processing模块这四种并发实现方案进行了性...