Python string.join(list)最后一个带"和"的条目

Nei*_*ski 5 python python-2.7

什么是加盟的句子部分列表,这样的结果是"A,B和C",其中一个优雅的方式list[ 'a', 'b', 'c' ]?指定只能', '.join()实现"a,b,c".

(另外,我确实对此进行了一些搜索,但显然我并没有尝试写短语,因为除了自己列举列表之外我还没有想出任何东西.)

Aur*_*Phi 5

L = ['a','b','c']

if len(L)>2:
    print ', '.join(L[:-1]) + ", and " + str(L[-1])
elif len(L)==2:
    print ' and '.join(L)
elif len(L)==1:
    print L[0]
Run Code Online (Sandbox Code Playgroud)

适用于0,1,2和3+长度.

我包括长度为2的原因是为了避免使用逗号:a and b.

如果列表长度为1,则只输出a.

如果列表为空,则不输出任何内容.