为了账号安全,请及时绑定邮箱和手机立即绑定

Python中的字符串格式

/ 猿问

Python中的字符串格式

慕盖茨9453107 2019-08-19 16:45:10

Python中的字符串格式

我想做一些类似的String.Format("[{0}, {1}, {2}]", 1, 2, 3)回报:

[1, 2, 3]

我如何在Python中执行此操作?


查看完整描述

3 回答

?
慕标琳琳

之前的答案使用了%格式,这在Python 3.0+中逐步淘汰。假设您使用的是Python 2.6+,这里描述了一个更具前瞻性的格式化系统:

http://docs.python.org/library/string.html#formatstrings

虽然还有更多高级功能,但最简单的形式最终看起来非常接近您所写的内容:

>>> "[{0}, {1}, {2}]".format(1, 2, 3)[1, 2, 3]


查看完整回答
反对 回复 2019-08-19
?
慕神8447489

你可以用三种方式做到:


使用Python的自动漂亮打印:

print [1, 2, 3]   # Prints [1, 2, 3]

用变量显示相同的东西:

numberList = [1, 2]numberList.append(3)print numberList   # Prints [1, 2, 3]

使用'经典'字符串替换(ala C的printf)。请注意%的不同含义是字符串格式说明符,%是将列表(实际上是元组)应用于格式化字符串。(注意%用作算术表达式的模(余数)运算符。)

print "[%i, %i, %i]" % (1, 2, 3)

请注意,如果我们使用预定义的变量,我们需要将其转换为元组来执行此操作:

print "[%i, %i, %i]" % tuple(numberList)

使用Python 3字符串格式。这仍然可以在早期版本中使用(从2.6开始),但它是在Py 3中执行此操作的“新方法”。注意,您可以使用位置(序数)参数或命名参数(对于它我已经把它放进去了)它们的顺序相反。

print "[{0}, {1}, {2}]".format(1, 2, 3)

注意名字'one','two'和'three'可以是任何有意义的。)

print "[{one}, {two}, {three}]".format(three=3, two=2, one=1)


查看完整回答
反对 回复 2019-08-19
?
慕姐829404

你正在寻找字符串格式,在python中它是基于C中的sprintf函数。

print "[%s, %s, %s]" % (1, 2, 3)

有关完整参考,请访问:http: //docs.python.org/library/stdtypes.html#string-formatting


查看完整回答
反对 回复 2019-08-19

添加回答

回复

举报

0/150
提交
取消
意见反馈 邀请有奖 帮助中心 APP下载
官方微信