2013-12-08 3 views
0

Я написал фрагмент кода в python, который читает строку, разбивая ее на 2 части, первая из которых является строкой, а вторая является целым числом. НапримерСложность в понимании ошибки в python

ABDKEK 1255443 

код выглядит следующим образом:

L=raw_input() 
    ls=L.split() 
    num=int(ls[1]) 
    L=ls[0] 
    len=len(L) 

и выдает следующую ошибку

 len=len(L) 
TypeError: 'int' object is not callable 

я сделать следующие изменения в коде:

length=len(L) 

и это w орки.

Может ли кто-нибудь объяснить, что делает ошибка 'int' object is not callable mean ??

+1

Не используйте 'len' как имя переменной. Если вы это сделаете, вы больше не сможете получить доступ к встроенной функции с именем 'len'. Обратите внимание, что вы получите ту же ошибку, например, «3 (2)». Нельзя вызвать int. –

+1

Да .. это. Я также объявил переменную len = 0 в начале. Когда я удаляю его, работает len = len (L), но если я попытаюсь использовать len (L) еще раз, это даст ошибку, теперь zen теперь является переменной и уже не встроенной функцией. Благодаря!! – alphacentauri

+0

Да, вы поняли! Хорошая работа :-) –

ответ

4

len - это имя функции, которое уже определено и не должно использоваться в качестве переменной. Вместо этого попробуйте другое имя.

+0

Спасибо .... но я просил интерпретацию ошибки .. как в .. почему слово «int» было использовано. – alphacentauri

Смежные вопросы