我试图用python格式化一个字符串,它将参数作为名称列表中的项。 关键是,我想打印所有带有双引号和反斜杠的列表项,并且一个接一个地打印在同一个字符串中。 代码是:
list_names=['Alex', 'John', 'Joseph J']
String_to_pring='Hi my name is (\\"%s\\")'%(list_names)
输出应如下所示:
^{pr2}$但是,我总是这样:
'Hi my names is (\"['Alex','John','Joseph J']\")'
我甚至尝试过使用.format()
和json.dumps()
,但结果还是一样。在
有没有任何方法可以打印所需的输出,或者一次只能打印每个列表项?在
在不改变代码的情况下,只需格式化转换为元组的列表的
repr
表示。在如果要获得精确的输出,只需执行一些字符串替换:
^{pr2}$如果您试图将
string_to_print
传递到其他地方,请先尝试正确的方法,它可能对您有效。如果您足够注意,您会发现前面的“不正确的方式”包含一个小错误,请尝试将
"Alex's house"
添加到list_names
中,输出如下所示:为了解决这个bug,您需要一种更好的替换方法,使用
^{4}$re.sub()
。在但如果在使用过程中不会发生这种情况,我建议继续使用“不恰当的方式”,因为它简单得多。在
这是使用^{} 和^{} 的一种方法:
没有将列表格式化为人类友好字符串的功能,您必须自己格式化列表:
相关问题 更多 >
编程相关推荐