Я имею дело со строками текста, такими как следующее: {{Х0}}

В Python, как я могу посчитать количество элементов между запятыми? Каждый элемент может состоять из 6, 7 или 8 символов, и в моем примере показаны 3 элемента. Разделитель всегда является запятой.

Я никогда не делал ничего, связанного с майнингом текста, так что это было бы началом для меня.

9
FaCoffee 10 Янв 2017 в 17:48

3 ответа

Лучший ответ

Вы можете посчитать количество запятых:

text.count(",") + 1
# 3
19
Willem Van Onsem 10 Янв 2017 в 14:54

Виллиен и Псидом уже упоминали count,

Я просто хотел добавить, что в python строка также итеративна, это понимание списка также может быть применено:

n = len([c for c in ','+text if c==','])

Или же

n = sum(1 for c in ','+text if c==',')
2
Uri Goren 10 Янв 2017 в 15:03

Если запятая (,) является разделителем, вы можете просто использовать str.split в строке, а затем {{X2} } на результат:

text = 'LN1 2DW, DN21 5BJ, DN21 5B'
number = len(text.split(','))

Вы также можете повторно использовать список элементов. Например:

text = 'LN1 2DW, DN21 5BJ, DN21 5B'
tags = text.split(',')
number = len(tags)
#do something with the `tags`
9
Willem Van Onsem 10 Янв 2017 в 14:53