Поменяйте два значения в массиве numpy.

Есть ли что-то более эффективное, чем следующий код для замены двух значений массива numpy 1D?

input_seq = arange(64) ix1 = randint(len(input_seq)) ixs2 = randint(len(input_seq)) temp = input_seq[ix2] input_seq[ix2] = input_seq[ix1] input_seq[ix1] = temp 

    One Solution collect form web for “Поменяйте два значения в массиве numpy.”

    Вы можете использовать распаковку кортежа. Переполнение распаковки позволяет избежать использования временной переменной в вашем коде (на самом деле я считаю, что сам код Python использует временную переменную за кулисами, но она на гораздо более низком уровне и, следовательно, намного быстрее).

     input_seq[ix1], input_seq[ix2] = input_seq[ix2], input_seq[ix1] 

    Я поставил этот вопрос как дубликат, ответ на сообщение об ошибке более подробно.

    Python - лучший язык программирования в мире.