Предмет: Информатика, автор: Galax0513

Напишите на питон, пожалуйста!
Задача. Напишите функцию best_treat(), которая принимает произвольное число аргументов-строк и произвольное количество именованных параметров из списка:
to_up – кортеж из букв, которые нужно привести к верхнему регистру, если они есть в слове;
remove – кортеж из двух индексов букв, которые нужно удалить из слова
Функция возвращает список преобразованных строк в исходном порядке.
data = ['pmswa', 'sgfro', 'yrppeils', 'sdzaril']
conditions = {'to_up': ('a', 'g'), ' remove ': (2, 4)}
print(*best_treat(*data, **conditions))

Ответы

Автор ответа: s1veme
1

Ответ:

def best_treat(*args, **kwargs):

words = []

word = ''

for text in args:

 for delete in kwargs['remove']:

  date = list(text)

  if len(text)-1 >= delete:

   del date[delete]

   text = "".join(date)

   

 date = []

 for elem in text:

  if elem in kwargs['to_up']:

   word += elem.upper()

  else:

   word += elem

 words.append(word)

 word = ''

return words

Объяснение:

Не самое оптимизированное решение, но достаточно простое.

*Можно было использовать map/filter.

Похожие вопросы
Предмет: Алгебра, автор: Дёгтева