我需要在任何像这样的二进制表示中拆分1和0。
code = 10001100
output_list = [1,000,11,00]
我找不到图案。我正在使用python3.x
对于这个问题,您实际上并不需要正则表达式。您可以使用itertools
中的groupby
来执行以下操作:
import itertools
code = "10001100"
gs = [list(g) for _, g in itertools.groupby(code)]
如果您想使用regex,那么:
import re
code = r'10001100'
output_list = re.findall(r'(0+|1+)', code)
regex不是必需的。这是一种蟒蛇般的方法:
code = '10001100'
output_list = []
interim_list = [code[i] + ',' if i != len(code)-1 and code[i] != code[i+1] else code[i] for i in range(len(code))]
output_list.append(''.join(interim_list))
print(output_list)
>>> print(output_list)
['1,000,11,00']