Найти - Пользователи
Полная версия: Гласные и согласные буквы в строке
Начало » Python для новичков » Гласные и согласные буквы в строке
1
SmallTalk
Доброго времени суток, меня интересует вопрос каким способом можно посчитать количество гласных и согласных букв в строке, естественно с учетом регистра
pasaranax
Не придумал ничего, кроме самого очевидного
# -*- coding: utf-8 -*-

def countChars(chars, text):
n = 0
for char in text:
if char in chars or char in chars.upper():
n += 1
return n

text = u"Текст, в кОТОРом будЕм считатЬ гласные И соГЛАсные"
g = countChars(u"аеёиоуыэюя", text)
s = countChars(u"бвгджзклмнпрстфхцчшщ", text)

print u"гласных: %i, согласных: %i" % (g, s)
lightcaster
# -*- coding: utf-8 -*-

CONS = u"бвгджзклмнпрстфхцчшщ"
VOV = u"аеёиоуыэюя"
text = u'Мама мыла раму'

cons = sum(1 for t in text.lower() if t in CONS)
vov = sum(1 for t in text.lower() if t in VOV)

print cons, vov
superolegg
Вопрос по этой тематике:
как с помощью функции добиться того, чтобы программа отсортировала все введенные пользователем слова по количеству согласных букв в них?
py.user.next
>>> lst = ["bbaa", "bbbb", "abe", "defdefdef", "ab"]
>>> lst.sort(key=lambda i: sum(ltr in "bcdfghjklmnpqrstvwxz" for ltr in i))
>>> print(lst)
['abe', 'ab', 'bbaa', 'bbbb', 'defdefdef']
>>>
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