Форум сайта python.su
0
Количество слов в строке и максимальный размер каждого из слов выбираются самостоятельно. Рекомендуется работать с латинскими символами. Дополнить символом “*” слова, имеющие длину меньше заданной (максимальной) до максимальной.
Офлайн
73
nameError где ваш код?
Офлайн
0
Кода нет, все мои попытки были неудачными. Прошу лишь дать основу, натолкнуть на правильное решение.
Офлайн
73
Количество слов в строке и максимальный размер каждого из слов выбираются самостоятельно. то есть каждое слово имеет свой максимальный размер?
основа простая собираем слова из строки в список проходим по списку в цикле получая слово и если его длина меньше заданного то изменяем его добавив * и меняем в списке это слово на новое
Офлайн
27
1. Перво-наперво отвечаем на вопрос: “Чем, каким разделителем, одно слово отделено от другого?”. Для split показываем разделитель из ответа на вопрос. Получаем список, как рекомендует marvellik
2. Открываем цикл и пробежим в нём по полученному списку, сравнивая длину слова с заданным максимумом. Если длина менее максимума, то вычисляем сколько знаков не хватает до этого самого максимума. Думаю, с простой арифметикой справитесь, зная значение максимума и длину текущего слова.
Строку с нужным количеством добавляемых знаков можно получить помножив знак на количество. Например, вот так: “*” * n. Как слить вместе исходное слово и полученную строку со звёздочками, думаю, догадаться нетрудно.
3. Подмена одного значения списка другим тоже нехитрое дело.
Офлайн
0
my_list=input('Print your words: ‘)
max_list=int(input(’Max in list: ‘))
m2=my_list.split()
for word in m2:
if len(word)<max_list:
n=max_list-len(word)
print(word+’*'*n)
else:
print(word)
Спасибо Вам огроменное)
Все работает. Только не получается вывести списком, чёт туплю. ХЭЛП
И не судите код, такой сойдет. У меня это проверяет старушка 60-летняя)
Отредактировано nameError (Сен. 24, 2019 21:25:01)
Офлайн
27
Чтобы вывести списком, надо этот список получить. Делается это, если топорно, на раз-два:
раз: создать пустой список до цикла for
два: вместо print надо сделать добавление в созданный список.
А вывод списка сделать после завершения цикла.
Офлайн