Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Планы на будущее, Python

Лариса Иванько Ученик (99), открыт 2 недели назад
Первое, что надо было сделать Артуру Денту, как он в итоге осознал, – это перестать беспокоиться и начать жить. То есть ему нужно было найти планету, на которой он смог бы жить, дышать, вставать и садиться, не испытывая неудобств с гравитацией, и на которой не идут кислотные дожди, а растительность не норовит тебя сожрать.

Напишите функцию для систематизации и последующего отбора подходящих планет.

Функция future() принимает произвольное число аргументов-строк и именованный аргумент plan со значением по умолчанию Earth.
Функция должна вернуть словарь, каждый ключ которого – количество букв строки, не входящих в значение аргумента plan, а значение – список слов с таким количеством букв, упорядоченный в обратном алфавитном порядке.
Одинаковые буквы считаются один раз независимо от регистра (например, в слове Window 5 букв, не входящих в Earth).

Примечание
Форматирование вывода система производит автоматически. Целочисленные ключи сравниваются в строковом представлении.

Моя "заготовка". Проблема с 4 строкой
 def future(*lines, plan='Earth'): 
d = {}
for line in lines:

return d
Дополнен 2 недели назад
пример:
Ввод
lines = [
'can', 'Breathe', 'experience',
'gravity', 'inconveniences', 'jellyfish',
'plankton', 'vegetation'
]
print(future(*lines))

Вывод
{
"2": [
"can"
],
"1": [
"Breathe"
],
"5": [
"vegetation",
"plankton",
"experience"
],
"4": [
"gravity"
],
"6": [
"jellyfish",
"inconveniences"
]
}
1 ответ
Александр Загуляев Мыслитель (7443) 2 недели назад
 def future(*lines, plan='Earth'): 
plan = set(plan.lower())
d = {}
for line in lines:
m = len(set(line.lower()) - plan)
if m not in d:
d[m] = []
d[m].append(line)
for key in d:
d[key].sort(reverse=True)
return d
Похожие вопросы