问题遇到的现象和发生背景
刚自学python,在做列表切分时,想以一个特征值为节点对列表切分
问题相关代码,请勿粘贴截图
a=[0.1,0.2,0.3,0.5,0,0.3,0.7,0,0.9,0.8,0,4,0.5,0]
r = [i for i in range(len(a)) if a[i] == 0]
b=[]
for n in r:
b=a[:n+1]
print(b)
运行结果及报错内容
[0.1, 0.2, 0.3, 0.5, 0]
[0.1, 0.2, 0.3, 0.5, 0, 0.3, 0.7, 0]
[0.1, 0.2, 0.3, 0.5, 0, 0.3, 0.7, 0, 0.9, 0.8, 0]
[0.1, 0.2, 0.3, 0.5, 0, 0.3, 0.7, 0, 0.9, 0.8, 0, 4, 0.5, 0]
我的解答思路和尝试过的方法
我自己写的对列表a以0为节点进行切分,我的思路是先确定列表中特征值0的索引,在对取到的索引值用for循环,但卡在了每次都是从最开始取数,没有达到我想的以0分段取值的效果,刚学python所以请求帮助,谢谢!
我想要达到的结果
[0.1, 0.2, 0.3, 0.5, 0]
[0.3, 0.7, 0]
[0.9, 0.8, 0]
[4, 0.5, 0]