Почему asarray напрямую не изменяет мой список здесь? - PullRequest
0 голосов
/ 29 апреля 2018

Я пытаюсь изменить первый элемент каждого сценария, но он не работает. Я думал, что asarray изменяет оригинальный объект, а не делает копию.

 input:  
 x = ([1, 2, 3],[4,5,6])    
 np.asarray(x)[0][0] = 42    
 print(x)  

 output:  
 ([1, 2, 3], [4, 5, 6])  

 input:
 x = [1,2,3]  
 np.asarray(x)[0] = 42   
 print(x)

 output:  
 [1, 2, 3]  

1 Ответ

0 голосов
/ 29 апреля 2018

asarray возвращает исходный объект, только если исходный объект уже был массивом. Если вы передадите asarray вложенный список, он скопирует данные списка в новый массив. Для других типов может возвращаться представление или копия, в зависимости от того, возможно ли представление.

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