import os
import psutil
class Foo:
def __init__(self, a, b, c, d, e, f, g):
self.a = a
self.b = b
self.c = c
self.d = d
self.e = e
self.f = f
self.g = g
foos = [Foo(*range(7)) for _ in xrange(10000)]
process = psutil.Process(os.getpid())
print process.memory_info().rss
产量~15286000
import os
import psutil
foos = [{'a': 0, 'b': 1, 'c': 2, 'd': 3, 'e': 4, 'f': 5, 'g': 6} for _ in xrange(10000)]
process = psutil.Process(os.getpid())
print process.memory_info().rss
我认为标准类和python dict之间有一点区别
产量~15286000
产量~1489万
所以dict看起来更轻
一般来说,你永远不应该重新发明轮子。但是,定义一个适合您需要的类是完全合理的。记住,premature optimization is the root of all evil
不,定义类并不被认为是浪费。到目前为止,99.9%的程序最重要的考虑因素是代码的清晰性。编写最能表达您想法的代码
相关问题 更多 >
编程相关推荐