微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

乳清粉确实将一行代码拆分为做很多事情成许多较小的行,所以运行速度慢得多

如何解决乳清粉确实将一行代码拆分为做很多事情成许多较小的行,所以运行速度慢得多

这一切都在python 3中。我有一行代码基本上可以做到这一点:

createRectsUsingPixi

从本质上讲,我拥有的是词典列表,每个词典包含多个条目,这些条目指向浮点列表。 someIndex1和someIndex2不相关,都是整数。 someList是字符串列表。

但是,当我将其拆分为下面时,它会变得慢得多

somefloat += someDict(someList(someIndex1)))(someIndex2)

我已经使用kernprof(它被大量嵌套-超过130,000个调用)对上述时间进行计时。结果如下:

案例1-一支班轮:

enter image description here

案例2-多层次:

enter image description here

因此,从上面您可以看到,一根衬板比任何一条单独的线都稍慢一些,但是一根衬线的速度几乎是其各个部分组合的4倍。我对这种缓慢的速度感到惊讶-我想念的是,这仅仅是任何操作的成本都超过了特定操作的成本吗?

解决方法

每次为val1,val2和val3分配新值时,都需要将其写入某个位置。然后,需要对其进行访问以获得所需的内容。 如果您的列表是深层嵌套的,并且调用了130k次以上,则每次都需要从该变量获取值,这可能会导致性能下降。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。