我创建了一个列表,但在打印时,我需要在列表最后一项之前添加“and”。示例:
mylist = ['me', 'you', 'him', 'her']
当我打印出列表时,我希望它看起来像:
me, you, him and her.
我不想显示 '
、[
或 ]
。
我目前正在使用:
mylist = ['me', 'you', 'him', 'her']
print (','.join.(mylist))
但输出是me,you,him,her
。我需要它来显示我、你、他和她
。
使用 str.join
和 rsplit
两次:
mylist = ['me', 'you', 'him', 'her']
new_str = ' and '.join(', '.join(mylist).rsplit(', ', 1))
print(new_str)
输出:
me, you, him and her
这适用于空列表或单元素列表:
new_str = ' and '.join(', '.join([]).rsplit(', ', 1))
print(new_str)
# None
new_str = ' and '.join(', '.join(['me']).rsplit(', ', 1))
print(new_str)
# me
我是一名优秀的程序员,十分优秀!