我有一个布尔变量数组。数组有一种结构,它由许多 0 和 1 的序列、不同长度的序列组成。如:
[111111110000111111111100000000000000111111100000011111111111111110000]
“值之间省略逗号”
我需要以这种方式将其分开
[111111110000],[111111111100000000000000],[1111111000000],[111111111111111110000]
有人知道一个好方法还是只是一种方法?
算法可以是无语言的,但如果你知道如何在 python 中做到这一点,欢迎你。
经过一番挣扎,我找到了一种划分数组的方法,但前提是它以 ONES 开头。我真的不知道如何使它与以 1 或 0 开头的数组一起工作。
import numpy as np
x = np.asarray([1,1,1,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,0,0,1,1,1,0,0,0,0,0,0,1,1,1,1,0,0,0])
c = 1
for i in range(len(x)):
if x[i] == 1:
if c == 0:
print "\n\tDIVIDE\n"
c = 1
print "one"
else:
if c == 1:
c = 0
print "zero"