Я люблю то, как питон обрабатывает свопы переменных: a, b, = b, a
своп ломтика Numpy массивов
, и я хотел бы использовать эту функцию, чтобы поменять местами между массивами, а не только по одному, но число из них (без использования временной переменной). Это не то, что я ожидал (я надеялся, что обе записи вдоль третьего измерения будет поменять местами для обоих):
import numpy as np
a = np.random.randint(0, 10, (2, 3,3))
b = np.random.randint(0, 10, (2, 5,5))
# display before
a[:,0, 0]
b[:,0,0]
a[:,0,0], b[:, 0, 0] = b[:, 0, 0], a[:,0,0] #swap
# display after
a[:,0, 0]
b[:,0,0]
Кто-нибудь есть идеи? Конечно, я всегда могу ввести дополнительную переменную, но мне было интересно, был ли более элегантный способ сделать это.
Мой любимый подход здесь: http://stackoverflow.com/a/4857981/786902 (продвинутая нарезка) –