首页 > 解决方案 > 某些操作后如何更新python数组

问题描述

在下面的代码中,我有一个名为List. 当 for 循环第一次运行时,我对该数组的一些值进行切片并创建一个名为new. 现在我想替换List为,new以便当 for 循环第二次运行时,它会从newnot from切片值List。那么我该怎么做呢?

def update():
    low =[1.5, 2.5, 3.0]
    high = [4.0, 4.5, 5.0]
    for i in range(len(low)):
        h1 = low[i]
        h2 = high[i]
        List=np.arange(1.0, 5.01, 0.5)
        hList =[]
        for k in range(len(List)):
            hList.append(round(List[k],2))

        low_ind =hList.index(low[i])
        high_ind = hList.index(high[i])
        #Slicing
        List = List[low_ind:high_ind]``

这是结果

`i is:  0
List:  [1.  1.5 2.  2.5 3.  3.5 4.  4.5 5. ]
After_Slicing
[1.5 2.  2.5 3.  3.5]

i is:  1
List:  [1.  1.5 2.  2.5 3.  3.5 4.  4.5 5. ]
After_Slicing
[2.5 3.  3.5 4. ]

i is:  2
List:  [1.  1.5 2.  2.5 3.  3.5 4.  4.5 5. ]
After_Slicing
[3.  3.5 4.  4.5]`

标签: pythonnumpy

解决方案


不完全确定你想做什么,但添加这一行:

        #Slicing
        new = List[low_ind:high_ind]
        List = new #This line

似乎更新了列表。


推荐阅读