Python - 解压字符串格式化运算符列表的简短方法?

发布于 2024-12-13 09:08:19 字数 160 浏览 0 评论 0原文

不幸的是, * 或 ** 运算符的变体似乎不起作用:

lstData = [1,2,3,4]
str = 'The %s are %d, %d, %d, and %d' % ('numbers', *lstData)

有一个简单的方法吗?

Variations of the * or ** operators don't seem to work, unfortunately:

lstData = [1,2,3,4]
str = 'The %s are %d, %d, %d, and %d' % ('numbers', *lstData)

Is there an easy way?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

长亭外,古道边 2024-12-20 09:08:19

使用格式

str = 'The {} are {}, {}, {}, and {}'.format('numbers', *lstData)

有关可能的格式(浮点数、小数点)的更多详细信息,请参阅文档, 转换, ..)。

Use format:

str = 'The {} are {}, {}, {}, and {}'.format('numbers', *lstData)

see the docs for more details about possible formatting (floats, decimal points, conversion, ..).

佞臣 2024-12-20 09:08:19
s = 'The %s are %d, %d, %d, and %d' % tuple(['numbers'] + lstData)
s = 'The %s are %d, %d, %d, and %d' % tuple(['numbers'] + lstData)
心如狂蝶 2024-12-20 09:08:19
>>> data = range(5)
>>> 'The {0} are {1}, {2}, {3}, {4} and {5}'.format('numbers', *data)
'The numbers are 0, 1, 2, 3 and 4'
>>> data = range(5)
>>> 'The {0} are {1}, {2}, {3}, {4} and {5}'.format('numbers', *data)
'The numbers are 0, 1, 2, 3 and 4'
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文