Проблема
Мне удалось дополнить строку звездочкой, однако я хотел бы посмотреть, можно ли дополнить ее звездочкой и пробелом.
Пример вывода
Что я смог получить
****************************Hello World***************************
... пытаясь получить
* * * * * * * * * * * * * * Hello World* * * * * * * * * * * * * *
Попытки
Наивно я пытался передать " *"
параметру заполнения спецификаций формата.Это вернулось с ошибкой:
Traceback (most recent call last):
File "main.py", line 17, in <module>
ret_string = '*{:{f}^{n}}'.format(string, f=filler, n=line_len)
ValueError: Invalid conversion specification
Затем я попытался использовать escape-символ "\s*"
, который дал тот же результат.Наконец, я снова посетил документацию 6.1.3.1.Спецификация формата Mini-Language и видим, что спецификация ввода ограничена символом и не открыта для строк.Это можно обойти?Я думал о создании своего рода составной ссылки, например, {{char1}{char2}}
, но это тоже не сработало.
Мысли?
Код
import fileinput
string = "Hello World"
ret_string = ""
line_len = 65
filler = " *"
for inputstring in fileinput.input():
string = inputstring.strip(" \n")
ret_string = '{:{f}^{n}}'.format(string, f=filler, n=line_len)
print(ret_string)