Alan Gauld schreef:
On 09/12/13 13:48, spir wrote:
On 12/09/2013 02:29 PM, Wolfgang Maier wrote:
spir <denis.spir <at> gmail.com> writes:
Tu sum it up (aha!): you algorithm is the right and only one
No, it's not the only one. ...
also the pure numbers approach pointed out by me and Alan.
You are right in a sense, but this is what int() does, isn't it?
No. int() can be done in several ways but usually it's based on taking
the character code and adding/subtracting some base value. (or uses a
lookup table). But to get the individual characters for conversion
it will loop over a string so in that respect its similar to the string
based approaches. But the OP didn't start with a string, he started with
an int.
spir should have said "..., but this is what str() does, ..." I think.
Extracting the individual digits from the number is the core of both
algorithms, and I would think str() uses an algorithm similar to the
divmod() approach (but in C instead of Python, possible simply using the
relevant function from the C standard library).
The difference is that str() converts the digits to chars (which have to
be converted back to ints later) while the pure divmod() approach
doesn't do that.
All in all I think the two algorithms don't differ that much, the main
difference being that in the str() approach part of the algorithm is
hidden behind the str() call.
--
"Met een spitsvondig citaat bewijs je niets."
-- Voltaire
_______________________________________________
Tutor maillist - Tutor@python.org
To unsubscribe or change subscription options:
https://mail.python.org/mailman/listinfo/tutor