2014-10-25 3 views
-1

взгляд на этот код:В чем разница между len() и count() в python?

x=object() 
x_list=[x]*5 
print x_list.count(x) 
5 
print len(x_list) 
5 

Выход count() и len() такое же, В чем разница между ними?

+2

Теперь сделайте 'x_list = [1, 2, 3, 4]' и используйте 'x_list.count (1)'. –

+1

@ LukasGraf Зачем читать документацию, когда вы всегда можете найти кого-то, чтобы ответить на тривиальные вопросы здесь, в надежде получить репутацию? http://meta.stackoverflow.com/questions/254433/should-i-send-students-to-stack-overflow/254436#254436 – msw

+0

@msw: так помогать кому-то сейчас verboten на том основании, что любой, кто отвечает на вопрос вы находите слишком тривиальным * должны * делать это за вознаграждение представителя? –

ответ

5

list.count() подсчитывает, сколько раз появляется данное значение. Вы создали список из 5 элементов, которые все равно, поэтому, конечно, x_list.count() считает, что элемент 5 раз в списке длины 5.

Вы могли бы попробовал тот же самый тест со списком с смеси значений:

>>> sample = [2, 10, 1, 1, 5, 2] 
>>> len(sample) 
6 
>>> sample.count(1) 
2 

sample список содержит 6 элементов, но значение 1 появляется только дважды.

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