Python风格:不需要内联的内联函数?
我正在写gtk代码。经常会有一些短小的回调函数,它们不需要闭包,因为它们已经接收了所有需要的参数。例如,在创建一些gtk.TreeViewColumns
的时候,我在循环中这样做:
def widthChanged(MAINCOL, SPEC, SUBCOL, expandable):
if expandable: return
w = MAINCOL.get_width()
SUBCOL.set_fixed_width(w)
cl.connect("notify::width", widthChanged, pnlcl, expand)
这样做可能效率不高,因为每次循环都会创建这个函数(顺便问一下:这样真的效率低吗,还是有优化?)。不过,我觉得如果把这些一行的代码都放到最上面,代码会变得更难懂。你们怎么看?
1 个回答
4
选择最容易读懂的写法就好。除非你的代码分析工具告诉你某个地方运行得特别慢,否则不用太担心速度问题。