Найти - Пользователи
Полная версия: распечатать слова, где не более 4 гласных
Начало » Python для новичков » распечатать слова, где не более 4 гласных
1
Kato
Здравствуйте! Извините, если не правильно оформляю- тут впервые да и вообще до этого не программировал.
Есть задачка,где нужно использовать break/continue: прога спрашивает у пользователя слова,пока тот не введет пустое(ну стандартно,короче). далее распечатать все, кроме тех, где более 4 гласных.
начало у меня выходит так:
word = '1'
arr = []
vow = [u'о',u'ы',u'ю',u'у',u'э',u'ё',u'я',u'и',u'е',u'а']
while word != '':
    arr.append(word)
    word = raw_input(u'Введите слово: ').decode('cp1251')
    nv = 0
    for i in word:
        for i in vow:
           nv += 1     
    for j in arr:        
        if nv < 5:
            continue
        print j

за nv принял количество гласных. знаю, тут наверняка бред, ибо я не совсем еще въехал во всю эту тему- не могли бы помочь разобрать? заранее спасибо
dimy44
arr = [] # список для отфильтрованных слов.
vow = u'аеиоуыэюя' # гласные.
while 1:
    word = raw_input(u'Введите слово').decode("cp-1251")
    if not word:
        break
    n = 0 # счетчик гласных.
    for i in word:
        if i in vow: # если гласная.
           n += 1
        if n > 4: # если перебор гласных.
            break
    else: # если цикл for завершился без break
        arr.append(word) # доб. слово.
if arr: # если список не пуст.
    for w in arr: # печать слов.
        print w
else:
    print = 'not found.'
Kato
скажите, пожалуйста,
if arr:

за что отвечает?
Singularity
Если список arr пуст то if не выполниться.
[] = False
["что нибудь буквы или цыфры",2] = True
Kato
понял, спасибо!
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