В моем вопросе несколько минут назад я спросил о том, как печатать, используя str.format
печать на python, когда строки хранятся в массиве.
Тогда ответ был явно распаковансписок, как это:
# note that I had to play with the whitespace because the {} text is 2 characters, while its replacement is always one
hex_string = r'''
_____
/ \
/ \
,----( {} )----.
/ \ / \
/ {} \_____/ {} \
\ / \ /
\ / \ /
)----( {} )----(
/ \ / \
/ \_____/ \
\ {} / \ {} /
\ / \ /
`----( {} )----'
\ /
\_____/
'''
letters = list('1234567')
print(hex_string.format(*letters))
Но если я всегда хочу, чтобы центральный шестиугольник печатался внутри первого элемента в массиве: letters[0]
, как я могу смешать распаковку массива с сохранением 4-го напечатанногострока из первого элемента массива?
Я открыт для печати других типов, например, f-строк.
Например:
print(hex_string.format(letters[3], letters[1], letters[2], letters[0], letters[4], letters[5], letters[6]))
Так что мой вывод на самом делевыглядит так:
_____
/ \
/ \
,----( 4 )----.
/ \ / \
/ 2 \_____/ 3 \
\ / \ /
\ / \ /
)----( 1 )----(
/ \ / \
/ \_____/ \
\ 5 / \ 6 /
\ / \ /
`----( 7 )----'
\ /
\_____/