Naive idiom questions
Terran Melconian
te_rem_ra_ove_an_forspam at consistent.org
Thu Jan 31 20:47:36 EST 2008
On 2008-01-31, Bjoern Schliessmann <usenet-mail-0306.20.chr0n0ss at spamgourmet.com> wrote:
> Did you measure such impact on your application?
> Also see http://www.skymind.com/~ocrow/python_string/
I don't have a real application yet. That was, in fact, exactly the web
page which informed me that the MutableString class was not implemented
with mutable primitives.
> Look at "lower level" HLLs. In C++, you'd have to use
Well, in C++, I would use something like:
string sa[5][5];
string has a default constructor, so I'll get a 5x5 array of empty
strings. Alternatively, I could use boost::array if I wanted container
semantics.
If I needed something dynamically resizable, I could use:
vector<vector<string> > vs(5);
and then I could append elements to each one. If I wanted needed to
resize them all to 5 immediately, I would have to loop:
for (vector<vector<string> >::iterator i = vs.begin(); i != vs.end(); i++)
i->resize(5);
and that isn't particularly concise or elegant either, but the odds of
needing them to start out at size 5 and *also* be resizable later are
low for most applications.
> Personally, I like list comprehensions much better.
Perhaps the take-away lesson is that comprehensions should be seen as a
very fundamental operation in Python, and I have the wrong idea by
considering them advanced.
More information about the Python-list
mailing list