首页 Python 如何生成字符之间带空格的字符串的所有可能组合?Python

如何生成字符之间带空格的字符串的所有可能组合?Python

如何生成字符之间带空格的字符串的所有可能组合? [in]: foobar[out]: [foobar, f oobar, fo obar, f o obar, foo bar, f oo bar, fo o bar, f o o bar, foob ar, f oob ar, fo ob ar, f o ob ar, foo b ar

如何生成字符之间带空格的字符串的所有可能组合?

[in]: "foobar"

[out]: 
['foobar','f oobar','fo obar','f o obar','foo bar','f oo bar','fo o bar','f o o bar','foob ar','f oob ar','fo ob ar','f o ob ar','foo b ar','f oo b ar','fo o b ar','f o o b ar','fooba r','f ooba r','fo oba r','f o oba r','foo ba r','f oo ba r','fo o ba r','f o o ba r','foob a r','f oob a r','fo ob a r','f o ob a r','foo b a r','f oo b a r','fo o b a r','f o o b a r','foobar','f o o b a r']

解决方法

import itertools as it

def func(s):
   if not s:
       return [s]
   binary = it.product(['',' '],repeat=len(s)-1)
   zipped = (it.izip_longest(s,comb,fillvalue='') for comb in binary)
   return [''.join(it.chain.from_iterable(x)) for x in zipped]

func('foobar')

输出:

['foobar','f o o b a r']

本文来自网络,不代表青岛站长网立场。转载请注明出处: https://www.0532zz.com/html/kaifa/python/20210220/17411.html
上一篇
下一篇

作者: dawei

【声明】:青岛站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

为您推荐

返回顶部