How to extract digit from a number?
Tim Chase
python.list at tim.thechases.com
Mon Jul 21 16:57:00 EDT 2014
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
More information about the Python-list
mailing list