@pcdesign

Как сокращать слова с с помощью python?

Есть ли вариант получить из
"Выходное напряжение", что-то вроде "Вых. напряж."
Из "Максимальная мощность" нечто вроде "Макс. мощн."
И т.д.
  • Вопрос задан
  • 913 просмотров
Пригласить эксперта
Ответы на вопрос 3
@MazAlVlad
Создать множество с согластными.
Создать множество с гластными.

Разрезать строку на две строки по пробелу.

Перебором брать буквы с получившихся строк и складывать пока не появится первая гласная, потом вторая, но вторую гласную не добавлять. Добавить '.'(точку)

Соединить две обработанные строки.

Я просто сомневаюсь, что какой-то язык программирования знает о существовании гласных и согласных.
Ответ написан
Комментировать
adugin
@adugin Куратор тега Python
Например, можете применить стеммер (библиотеки нагуглите).
Ответ написан
Комментировать
@Notrdam
С множеством гласных проходимся итератором по слову и находим индекс положения гласных до второй гласной и прерываем итератор.
Режем до второй гласной и добавляем точку.
При использовании прерывания итератора есть возможность ловить случаи которые прошли без прерывания (была только одна гласная).

vowels = 'aeuio'
shorts = []
for word in line.split():
__found_vowel = False
__for i, letter in enumerate(word):
____if letter in vowels:
______if found_vowel:
________shorts. append( word[:I] + '.' )
________break
______else:
________found_vowel = True
__else:
______ # В слове есть только одна гласная.

Можно еще добавить условие, что после второй гласной есть еще N количество букв.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы