как получить все значения из цикла while, а не только 1-й итерации? - PullRequest
0 голосов
/ 28 мая 2019

Финальным является массив с 4 строками, и мне нужно получить все значения из вложенного цикла while, но этот код просто возвращает 1-ю строку последней или 1-й итерации цикла.

def amir2 (final):
    i = 0
    j = 0
    temp = []
    temp2 = []
    temp3 = []
    while i < len(final):
        while j < len(final):
            cos_lib = coss(final[i] , final[j])
            temp.append(cos_lib)
            j += 1
        temp2.append(temp)
        i += 1
    return temp2

Ответы [ 2 ]

1 голос
/ 28 мая 2019

Вам необходимо предоставить подробную информацию о точном формате массива numpy final, а также о том, что вы пытаетесь сделать в цикле с помощью метода coss.

Если финал определен так:

final = np.array([[1,2,3],[1,2,3],[1,2,3]], dtype=np.float64)

вы можете получить массив, используя .shape, чтобы вы могли перебирать все элементы массива следующим образом:

for x in range(0, final.shape[0]):
    for y in range(0, final.shape[1]):
        print final[x, y]
0 голосов
/ 28 мая 2019

для numpy используйте temp2 = np.append (temp2, temp)

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