Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 8, 2016 21:15:36

ProPall
Зарегистрирован: 2016-10-10
Сообщения: 28
Репутация: +  0  -
Профиль   Отправить e-mail  

Посчитать колличество слов с одинаковым колличеством знаков в строке

Нужно сделать лист H с числами, так чтобы H выдавало колличество слов с длинной i из строки.

 
L=["Привет","как","дела","хорошо"]
H[6]=2

Отредактировано ProPall (Ноя. 8, 2016 22:19:07)

Офлайн

#2 Ноя. 8, 2016 22:06:26

izekia
От:
Зарегистрирован: 2008-07-19
Сообщения: 317
Репутация: +  12  -
Профиль   Отправить e-mail  

Посчитать колличество слов с одинаковым колличеством знаков в строке

 # хотелось бы отметить, что в данном примере 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



Отредактировано izekia (Ноя. 8, 2016 22:08:00)

Офлайн

#3 Ноя. 8, 2016 22:18:49

ProPall
Зарегистрирован: 2016-10-10
Сообщения: 28
Репутация: +  0  -
Профиль   Отправить e-mail  

Посчитать колличество слов с одинаковым колличеством знаков в строке

izekia
Cпасибо, а можно ли как-то это сделать через индексирование? Я пытался, но все равно не работает.
H=[ ]
d=0
for i in H:

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


print (H)

Офлайн

#4 Ноя. 8, 2016 22:39:31

izekia
От:
Зарегистрирован: 2008-07-19
Сообщения: 317
Репутация: +  12  -
Профиль   Отправить e-mail  

Посчитать колличество слов с одинаковым колличеством знаков в строке

 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: учите язык



Отредактировано izekia (Ноя. 8, 2016 22:39:59)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version