Я сейчас изучаю Python и застрял в этой строке кода, которую нашел в интернете. Я не могу понять, что на самом деле делает эта строка кода.
Предположим, у меня есть этот массив:
import numpy as np
x = np.array ([[1,5],[8,1],[10,0.5]]
y = x[np.sqrt(x[:,0]**2+x[:,1]**2) < 1]
print (y)
Результатом является пустой массив. Я хочу знать, что на самом деле делает y ? Я никогда не сталкивался с такого рода кодом раньше. Кажется, что квадратные скобки похожи на оператор if-conditional . Вместо этого кода, если напишите эту строку кода:
import numpy as np
x = np.array ([[1,5],[8,1],[10,0.5]]
y = x[0 < 1]
print (y)
Он вернет именно то, что x (потому что ноль меньше единицы).
Предполагая, что это способ написать оператор if-conditional , я считаю его действительно абсурдным, потому что я сравниваю массив с целым числом.
Спасибо за ваш ответ!