Как обновить массив Python после определенной операции - PullRequest
0 голосов
/ 25 сентября 2018

В следующем коде у меня есть массив с именем List.Когда цикл for запускается в первый раз, я разрезаю некоторые значения этого массива и создаю новый массив с именем new.Теперь я хочу заменить List на new, чтобы при повторном запуске цикла for значения вырезались из new, а не из 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]`

1 Ответ

0 голосов
/ 25 сентября 2018

Не совсем уверен, что вы хотите сделать, но добавление этой строки:

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

, похоже, обновляет список.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...