可以说我有一个单词列表,我想用逗号和空格分隔列出所有单词。因此,举例来说,可以说列表l
包含的项['banana', 'apple', 'pear']
,我想产生串"banana, apple, pear"
生成字符串时用元素分隔的元素避免输入冗余
现在,这种方法我会用解决的问题如下:
s = ""
s += l[0]
for i in range(1, len(l)):
s += ", %s" % l[i]
或者与上述非常类似的东西。问题是第2行的额外任务看起来有点杂乱和冗余,看起来与第4行几乎完全相同,只是增加了逗号和空格。虽然这对于非常小的表达式来说并不是太大的问题,但它可能会让人讨厌而不愉快,寻找大型表达式。例如,如果不是l[0]
,我们可能有foo(bar(l[0]) + foobar(l[0]) + ...
,只是觉得不得不重复下面几行相似的语句。没有额外的冗余,是否有更好的方法来实现所期望的结果?这可能包括特定于Python标准库的答案或可用于多种语言的一般模式。
哇,好了,这是一个为Python调用极为明显。谢谢,只要十分钟时间过去,我会立即将其设置为正确的答案 – eltommo 2012-04-26 07:31:46