python3字符串格式打印:如何从数组打印?

2024-04-23 23:22:15 发布

您现在位置:Python中文网/ 问答频道 /正文

Python3有超能力字符串格式打印:

'{} {}'.format('one', 'two')

如果我的字符串在数组中,一种方法是将它们键入:

^{pr2}$

但是如何从数组中打印,而不必键入每个元素呢?在

例如,损坏的代码:

a = ['one','two']
'{} {}'.format(a)

给我一个预期的错误:IndexError: tuple index out of range

当然,玩','.join(a)不会有帮助,因为它给出的是一个字符串而不是2。在

(或者,有没有一种方法可以更好地使用f字符串?)在


为了全面揭示,我使用了一个原始字符串,因为它有一些几何意义,我的真实代码如下所示:

hex_string = r'''
            _____
           /     \
          /       \
    ,----(    {}    )----.
   /      \       /      \
  /   {}    \_____/   {}    \
  \        /     \        /
   \      /       \      /
    )----(    {}    )----(
   /      \       /      \
  /        \_____/        \
  \   {}    /     \   {}    /
   \      /       \      /
    `----(    {}    )----'
          \       /
           \_____/
'''

letters = list('1234567')

print(hex_string.format(letters[0], letters[1], letters[2], letters[3], letters[4], letters[5], letters[6]))

Tags: 方法字符串代码formatstring键入格式数组
3条回答

对列表使用*符号:

print(hex_string.format(*letters))

尝试使用*解压缩列表中的元素,如下所示。例如,打印看起来像

print ('{} {}'.format(*a))
# one two

在函数调用期间使用unpacking展开数组。在

print(hex_string.format(*letters))

输出:

^{pr2}$

相关问题 更多 >