Uwielbiam sposób pyton jest obsługa zamiany zmiennych a, b, = b, a
swap plastry tablic numpy
i chciałbym, aby korzystać z tej funkcji, aby zamienić wartości między tablicami, a także, nie tylko jeden na raz, ale ich liczba (bez użycia zmiennej tymczasowej). To nie to, co się spodziewałem (miałem nadzieję, obie pozycje wzdłuż trzeciego wymiaru zamieniłbym dla obu):
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]
Czy ktoś ma pomysł? Oczywiście zawsze mogę wprowadzić dodatkową zmienną, ale zastanawiałem się, czy istnieje bardziej elegancki sposób robienia tego.
Moim ulubionym sposobem jest tutaj: http://stackoverflow.com/a/4857981/786902 (zaawansowane krojenie) –