Python开数组也太消耗时间了吧?
dp=[[[MAXforiinrange(2)]foriinrange(40000)]foriinrange(210)]这句话,只是开了一个10*7方的数组,赫然发现消耗...
dp=[[[MAX for i in range(2)]for i in range(40000)]for i in range(210)]这句话,只是开了一个10*7方的数组,赫然发现消耗了7s中,开个数组都这么伤,python就这么不注意时间效率?本人i7处理器啊。
展开
3个回答
展开全部
(因为上次回复引起提者的反感修改如下)
1.python的确如楼上所说,更适合快速。但是如果一定要有效率也不是没有办法。通常会用C接口。比如象是海量数据处理,我经常用ctypes这个库,节约内存,同时也提高效率
2.python的库有些是C语言写的,也优化过,其实速度并不是想象的那么慢。也就比JAVA慢一点吧。我曾经对比过,同样的计算,优化过的python程序比C语言都要快10倍
3.python语言里整型也是对象。通常不会用它直接做大型数组。
python在科学计算里是很受欢迎的。方便 ,开发速度快,其实效率也还是很快的。曾经用python做过一个海量数据分析的分布式数据分析软件。 感觉还是很好的。 这套系统运行在一组只有2G-4G内存的老的服务器上。那些服务器的计算速度连我的奔腾CPU的笔记本都比不上。不过依然可以处理几千万的用户数据。
1.python的确如楼上所说,更适合快速。但是如果一定要有效率也不是没有办法。通常会用C接口。比如象是海量数据处理,我经常用ctypes这个库,节约内存,同时也提高效率
2.python的库有些是C语言写的,也优化过,其实速度并不是想象的那么慢。也就比JAVA慢一点吧。我曾经对比过,同样的计算,优化过的python程序比C语言都要快10倍
3.python语言里整型也是对象。通常不会用它直接做大型数组。
python在科学计算里是很受欢迎的。方便 ,开发速度快,其实效率也还是很快的。曾经用python做过一个海量数据分析的分布式数据分析软件。 感觉还是很好的。 这套系统运行在一组只有2G-4G内存的老的服务器上。那些服务器的计算速度连我的奔腾CPU的笔记本都比不上。不过依然可以处理几千万的用户数据。
展开全部
你用这个来干嘛呢?
python的设计哲学是开发效率第一,而不是运行效率第一。
如果需要科学计算,可以使用第三方库比如pynum 。
在工程上,python的效率好像从来没有成为过问题。
python的设计哲学是开发效率第一,而不是运行效率第一。
如果需要科学计算,可以使用第三方库比如pynum 。
在工程上,python的效率好像从来没有成为过问题。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不要用这样的方式建立list。
这种情况最好用:
dp=[[[MAX,MAX]]*40000]*210
这样如果MAX=1的话,在我这里只要0:00:00.006000。我的cpu是2.8GHz的。
这种情况最好用:
dp=[[[MAX,MAX]]*40000]*210
这样如果MAX=1的话,在我这里只要0:00:00.006000。我的cpu是2.8GHz的。
追问
你这样建立的python数组是错误的
你把dp[0][1][1]=10000,然后你就会发现数组里面有好多值都是10000,因为你这样建立的话,好多值都是取向一个引用
追答
你说的对,我错了。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询