Python throws the error, ‘str’ object is not callable, when you use reserved functions like str() as local or global variable.
Let’s consider this code example –
avengerMoviesCount = 4 str = str(avengerMoviesCount) numberOfInfinityStones = 6 convertToString = str(numberOfInfinityStones)
Did you get what’s wrong with this code? This code will throw the error – ‘str’ object is not callable. It is because of this line –
str = str(avengerMoviesCount)
str
is a built in function of Python and we should not use it as a variable name. What happened is that after the assignment, str
became a string variable and lost its property of being a function.
Now if you try to call str
as a function, then Python will throw the str not callable error.
Here is the list of all the built-in functions, you should avoid using as local variables –
abs() | dict() | help() | min() | setattr() |
all() | dir() | hex() | next() | slice() |
any() | divmod() | id() | object() | sorted() |
ascii() | enumerate() | input() | oct() | staticmethod() |
bin() | eval() | int() | open() | str() |
bool() | exec() | isinstance() | ord() | sum() |
bytearray() | filter() | issubclass() | pow() | super() |
bytes() | float() | iter() | print() | tuple() |
callable() | format() | len() | property() | type() |
chr() | frozenset() | list() | range() | vars() |
classmethod() | getattr() | locals() | repr() | zip() |
compile() | globals() | map() | reversed() | __import__() |
complex() | hasattr() | max() | round() | |
delattr() | hash() | memoryview() | set() |