我明白了str.join():
>>> '|'.join(['1','2','3'])
'1|2|3'
Run Code Online (Sandbox Code Playgroud)
是否有输出清单的东西?是否有输出的功能:
['1', '|', '2','|', '3']
Run Code Online (Sandbox Code Playgroud)
那是一个str.join()列表吗?(或任何其他可迭代?)
list('|'.join(['1','2','3']))
Run Code Online (Sandbox Code Playgroud)
你应该在你使用字符列表时做的伎俩.
适用于所有对象的更通用的解决方案是:
from itertools import izip_longest, chain
def intersperse(myiter, value):
return list(
chain.from_iterable(izip_longest(myiter, [], fillvalue=value))
)[:-1]
Run Code Online (Sandbox Code Playgroud)
我不知道这个函数的内置/ std库版本.
在行动:
print intersperse([1,2,3], '|')
Run Code Online (Sandbox Code Playgroud)
输出:
[1, '|', 2, '|', 3]
Run Code Online (Sandbox Code Playgroud)