Ответ 1
>>> '{1}{0}{1}'.format(s.join(lis), s)
'xaxbxcxdx'
Предположим, у меня есть этот список:
lis = ['a','b','c','d']
Если я делаю 'x'.join(lis)
результат:
'axbxcxd'
Какой был бы чистый и простой способ получить этот результат?
'xaxbxcxdx'
Я мог бы написать вспомогательную функцию:
def joiner(s, it):
return s+s.join(it)+s
и назовите его как joiner('x',lis)
который возвращает xaxbxcxdx
, но он выглядит не так просто, как мог бы быть. Есть ли лучший способ получить этот результат?
>>> '{1}{0}{1}'.format(s.join(lis), s)
'xaxbxcxdx'
Вы также можете сделать это как
'x'.join([''] + lis + [''])
Но я не уверен, что он чище.
Он будет производить только 1 разделитель в пустом списке вместо 2 как один в вопросе.