Я пытаюсь написать функцию, которая будет изменять помеченное слово в зависимости от тегов, присутствующих в слове, так что в основном это лемматизатор, но для слов на шведском языке.
Например, если слово было помечено буквой A, оно удалит окончание X из слова, а если слово также было помечено буквой B, оно удалит окончание Y из слова и т. д. Всего существует семь различных окончаний, которые могут присутствовать в слове. слово в зависимости от комбинации тегов и которое я в этом случае хочу удалить.
До сих пор я пробовал использовать несколько операторов if друг за другом, которые изменяли бы слово, если оно было помечено одной комбинацией тегов, а затем проверяли, было ли оно помечено другой комбинацией тегов, а затем изменяли его на основе этого и так далее. .
if tag1 == 'A':
word = word.rstrip('x')
if tag2 == 'B' and tag3 == 'C' and tag4 == 'D':
word = word.rstrip('y')
if tag3 == 'B' and tag4 == 'D':
word = word.rstrip('z')
У меня возникли проблемы с пониманием того, как я должен формулировать операторы if, чтобы каждый из них проверял комбинацию тегов, изменял слово, если утверждение верно, а затем передал измененное слово следующему утверждению. Как бы я это сделал?
РЕДАКТИРОВАТЬ: Как сказал Прун, я знаю, что могу просто добавить операторы if со всеми возможными комбинациями тегов, но я хотел посмотреть, есть ли более элегантное решение, чем сделать это.