我正在制作这个程序,它需要打印出一个列表,如果列表更正确,我更愿意。我想知道是否可以在列表的最后一个元素之前添加“和”以使其看起来正确。谢谢。
=IF(B2 >0,NOW(),"")
答案 0 :(得分:4)
您可以使用函数以您希望的方式构建联接列表:
def join_and(items):
return ', '.join(items[:-1]) + ' and '+items[-1]
即,使用逗号加入除最后一项之外的所有项目,然后添加'和'在最后一项之前。 (您可以随意添加牛津逗号。)
>>> join_and(['alpha', 'beta', 'gamma'])
'alpha, beta and gamma'
如果您希望函数为长度为1或0的列表提供适当的结果,您可以执行以下操作:
def join_and(items):
if len(items)==0:
return ''
if len(items)==1:
return items[0]
return ', '.join(items[:-1]) + ' and '+items[-1]
答案 1 :(得分:1)
试试这个:
input('What would you liketo eat? Your choices are {}.'.format( ', '.join( healthItems[:-1]) + ' and '+healthItems[-1]))