我怎么能在任何字符之前和任何字符之前拆分字符串。 E.g:如何在任何字符前后分割字符串?
x = '846a12'
我怎么会输出:
z = ['846','a','12']
在这种情况下,问题是我已经提到了我的功能特定的字符(特定字符:“A”在上面的例子)。如果输入是不同的字符(假设:'b'),我的功能失败。我该如何处理随机字符?
感谢。
我怎么能在任何字符之前和任何字符之前拆分字符串。 E.g:如何在任何字符前后分割字符串?
x = '846a12'
我怎么会输出:
z = ['846','a','12']
在这种情况下,问题是我已经提到了我的功能特定的字符(特定字符:“A”在上面的例子)。如果输入是不同的字符(假设:'b'),我的功能失败。我该如何处理随机字符?
感谢。
可以使用itertools
解决这些类型的问题,那里有隔板的出现了多次的情况下,例如:
>>> import itertools as it
>>> [''.join(x) for _, x in it.groupby('846a12', key=lambda c: c=='a')]
['846', 'a', '12']
真的吗?与评论中的其他两种解决方案相比,这是一个糟糕的解决方案。它的可读性要差得多,而且我愿意打赌它效率也不高。 –
同意,如果只有一个分隔符出现,并且我不确定它与基于're'的解决方案相比是否可怕。 – AChampion
不,链接的重复数据处理多次出现的分隔符。 –
'“846a12'.partition(” A')'? –
你的例子与“任何角色”有什么关系?这个例子应该变成'846','a','12','b','55'等'846a12b55'吗?你应该正确地显示你想要的一般情况。 –