python中的逻辑数组切片到子数组
我想问一下,你们中是否有人对如何在Python中将逻辑数组分割成子数组有想法。例如,如果我有下面的数组[111 00 10 11],我想切分为[111]、[1]、[11],丢弃零 2-如何获得与切片子数组相关联的原始索引,即idx1=[0,1,2]idx2=[5]idx3=[7,8] 先谢谢你。 费提python中的逻辑数组切片到子数组,python,arrays,slice,Python,Arrays,Slice,我想问一下,你们中是否有人对如何在Python中将逻辑数组分割成子数组有想法。例如,如果我有下面的数组[111 00 10 11],我想切分为[111]、[1]、[11],丢弃零 2-如何获得与切片子数组相关联的原始索引,即idx1=[0,1,2]idx2=[5]idx3=[7,8] 先谢谢你。 费提 这将帮助您理解循环或列表: 循环 x = [111, 00, 10, 11] result = [] for i in x: if i: result.append([
这将帮助您理解循环或列表: 循环
x = [111, 00, 10, 11]
result = []
for i in x:
if i:
result.append([i])
print(result)
列表理解
x = [111, 00, 10, 11]
result = []
result = [[i] for i in x if i]
print(result)
是的,这就是我要找的。还有一个问题,如何获得与切片子数组相关联的数组的原始索引,即idx1=[0,1,2]idx2=[5]idx3=[7,8]这可以通过两个步骤完成:[x代表x,y在枚举('[111 00 10 11]')。条带('][')。如果y='1'],则替换('')…这将为您提供所有1的索引。现在使用提取的1的组的长度,从上面的列表中弹出那些元素的数量。如第一组为“111”,则弹出最初的3个索引。i、 e[0,1,2]。下一步,当数字为“1”时,弹出一个元素
x = [111, 00, 10, 11]
result = []
result = [[i] for i in x if i]
print(result)