Найти - Пользователи
Полная версия: Посчитать колличество слов с одинаковым колличеством знаков в строке
Начало » Python для новичков » Посчитать колличество слов с одинаковым колличеством знаков в строке
1
ProPall
Нужно сделать лист H с числами, так чтобы H выдавало колличество слов с длинной i из строки.
 
L=["Привет","как","дела","хорошо"]
H[6]=2
izekia
 # хотелось бы отметить, что в данном примере H[5] = 0
from collections import defaultdict
 
def count_words_length(s):
    result = defaultdict(int)
    for word in s:
        result[len(word)] += 1
    return result
 
H = count_words_length(["Привет","как","дела","хорошо"])
for i in range(7):
    print('H[%s] =' % i, H[i])
 H[0] = 0
H[1] = 0
H[2] = 0
H[3] = 1
H[4] = 1
H[5] = 0
H[6] = 2
ProPall
izekia
Cпасибо, а можно ли как-то это сделать через индексирование? Я пытался, но все равно не работает.
H=[ ]
d=0
for i in H:

if len(L[i]) == i:
H[i]= d+1


print (H)
izekia
 def count_words_length(words_list):
    max_length = 0
    words_length = []
    for word in words_list:
        word_length = len(word)
        words_length.append(word_length)
        max_length = max(max_length, word_length)
  
    if max_length > 0:
        result = [0] * (max_length + 1)
        for word_length in words_length:
            result[word_length] += 1
        return result
    else:
        return []

PS: учите язык
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB