Which is more pythonic?

Filip Gruszczyński gruszczy at gmail.com
Thu Dec 3 10:41:56 EST 2009


I have just written a very small snippet of code and started thinking,
which version would be more pythonic. Basically, I am adding a list of
string to combo box in qt. So, the most obvious way is:

for choice in self.__choices:
	choicesBox.addItem(choice)

But I could also do:

map(self.__choices, choicesBox.addItem)

or

[choicesBox.addItem(choice) for choice in self.__choices]

I guess map version would be fastest and explicit for is the slowest
version. However, the first, most obvious way seems most clear to me
and I don't have to care about speed with adding elements to combo
box. Still, it's two lines instead of one, so maybe it's not the best.
So, which one is?

-- 
Filip Gruszczyński



More information about the Python-list mailing list