我有这个列表:
sampleList=['a','b','c','d']
我需要显示如下列表元素:
a, b, c and d
我试图将','与每个列表元素连接在一起。但是我没有得到预期的结果。
','.join(sampleList)
每个列表元素在最后一个元素(例如a,b,c和d)之前用逗号和关键字“和”分隔。
答案 0 :(得分:1)
没有内置的方法可以做到这一点。你必须自己动手
', '.join(sampleList[:-1]) + ' and ' + str(sampleList[-1])
输出:
>>> sampleList = ['a', 'b', 'c', 'd']
>>> ', '.join(sampleList[:-1]) + ' and ' + str(sampleList[-1])
'a, b, c and d'
>>>
答案 1 :(得分:0)
使用str.join
尝试以下代码,并使用[::-1]
和str.replace
进行反向操作(有点hack):
>>> sampleList=['a','b','c','d']
>>> s = ', '.join(sampleList)
>>> s[::-1].replace(' ,', ' dna ', 1)[::-1]
'a, b, c and d'
>>>
答案 2 :(得分:0)
为此,您可以对n-1个元素执行相同的操作,并用'and'连接最后一个元素:
customer.summary