Python количество значение символов в списке

У меня есть список с помощью len посчитал количество элементов в списке получил ответ 5 теперь мне нужно посчитать каждый из значений, как мне это сделать помогите пожалуйста я Python новичок) ответ должно быть таким

ба = 2

ман = 3

пиёда =5

....

st="ман ба мактаб меравам пиёда"
arr=st.split()
print(len(arr))
    

Ответы (1 шт):

Автор решения: CrazyElf

Примените len к каждому элементу списка. Проще всего это сделать с помощью спискового включения:

print(*[f'{s} = {len(s)}\n' for s in arr])

 ман = 3
 ба = 2
 мактаб = 6
 меравам = 7
 пиёда = 5

Ну или может более понятный вам будет вариант с обычным циклом for:

for s in arr:
    print(f'{s} = {len(s)}')

P.S. Отметил ещё чётные цифры надписью по просьбе автора вопроса:

print(*[f'{s} = {len(s)} {"четное" if len(s) % 2 == 0 else ""}\n' for s in arr])

Вывод:

 ман = 3 
 ба = 2 четное
 мактаб = 6 четное
 меравам = 7 
 пиёда = 5 
→ Ссылка