如果给出了类似"RL2R'F2LD'"
的字符串,将其拆分为字符串"R" "L2" "R'" "F2" "L" "D'"
的最有效方法是什么?
我尝试了几种方法,例如先将它们拆分为单个字符,然后尝试将它们添加到列表中,但没有任何正常工作。
最佳答案
def rubikstring(s):
import string
cumu = ''
for c in s:
if c in string.ascii_letters:
if cumu: yield cumu
cumu = ''
cumu += c
if cumu: yield cumu
可以做你的工作。用
>>> for i in rubikstring("RL2R'F2LD'"): i
...
'R'
'L2'
"R'"
'F2'
'L'
"D'"
您将获得理想的结果,
>>> list(rubikstring("RL2R'F2LD'"))
['R', 'L2', "R'", 'F2', 'L', "D'"]
也一样
关于python - 分割字符串(如python中的rubik的多维数据集表示法)的最有效方法?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13272861/