On 12/17/2012 12:00 AM, boB Stepp wrote:
On Sun, Dec 16, 2012 at 10:41 PM, Mitya Sirenef <msire...@lightbird.net> wrote:
> >> What would you want to happen for int("10.5")? If 10.0 was accepted, >> it would be consistent to accept 10.5, too. > > I was expecting int("10.5") to return 10 .
I just want to note that this is what you expect _now_, because this is what you're doing at the moment. If you were parsing a text and a float turned up at an unexpected spot, you may well be unpleasantly surprised if python silently changed it into a numerically quite different number!
> >> The issue, I think, is that a simple operation should not go too far >> beyond what it is supposed to do - if you are sure you are converting a >> float in a string, you need to do it explicitly, and if you're >> converting a string to an int and the string is not actually an int, >> then maybe it wasn't supposed to be a float and it's a mistake in the >> program -- and therefore python should alert you. >> > And this is why I asked the question. If this is the rationale, it > makes sense--an extra bit of double checking of the programmer's > intent. No problem. I'm not certain this is the main/only reason, but I'd expect this reason alone be enough to make this design choice.. -m -- Lark's Tongue Guide to Python: http://lightbird.net/larks/ _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: http://mail.python.org/mailman/listinfo/tutor