On 2013-01-25, Oscar Benjamin <oscar.j.benja...@gmail.com> wrote: > On 24 January 2013 11:35, Chris Angelico <ros...@gmail.com> wrote: >> It's usually fine to have int() complain about any >> non-numerics in the string, but I must confess, I do sometimes >> yearn for atoi() semantics: atoi("123asd") == 123, and >> atoi("qqq") == 0. I've not seen a convenient Python function >> for doing that. Usually it involves manually getting the >> digits off the front. All I want is to suppress the error on >> finding a non-digit. Oh well. > > I'm interested to know what the situations are where you want > the behaviour of atoi().
Right. atoi is no good even in C. You get much better control using the sprintf family. int would need to return a tuple of the number it found plus the number of characters consumed to be more useful for parsing. >>> intparse("123abc") (123, 3) But that would make it might inconvenient for general use. -- Neil Cerutti -- http://mail.python.org/mailman/listinfo/python-list