普通字符串与由'%s'格式化的字符串之间的区别是什么,因为它们的结果不同,如下所示:
# It's ok
>>> "{%s}" % ' and '.join(['nice','good','perfect'])
'{nice and good and perfect}'
# It's not ok
>>> "{' and '}".join(['nice','good','perfect'])
"nice{' and '}good{' and '}perfect"
答案 0 :(得分:2)
你的第一个例子,
"{%s}"%' and '.join(['nice','good','perfect'])
使用给定字符串' and '
加入列表,然后将其替换为%s
你的第二个例子,
"{' and '}".join(['nice','good','perfect'])
使用给定字符串{' and '}
连接列表。正如您所看到的,这些是两个完全不同的操作,这就是您获得不同输出的原因。
答案 1 :(得分:1)
将代码更改为
"{" + " and ".join(['nice','good','perfect']) + "}"
输出:
'{nice and good and perfect}'