On 2014-07-21 13:42, fl wrote: > The original source input is: > >>> a = 1234 > >>> [int(d) for d in str(a)] > > He hopes the output is: > >>> [1, 2, 3, 4] > > In fact, I get the output is: > > >>> a = 1234 > >>> [int(d) for d in str(a)] > Traceback (most recent call last): > File "<interactive input>", line 1, in <module> > TypeError: 'str' object is not callable
This sounds suspiciously like you have shadowed the str() function. You might search your code for something like str = "test" which shadows the built-in str() function. The code you have works at the command-line as long as you haven't shadowed the previously-existing str() function: $ python Python 2.7.3 (default, Mar 13 2014, 11:03:55) [GCC 4.7.2] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> a = 1234 >>> [int(d) for d in str(a)] [1, 2, 3, 4] -tkc -- https://mail.python.org/mailman/listinfo/python-list