Files
reversi/test_main.ipynb

3.5 KiB

In [1]:
import numpy as np
In [2]:
a = np.zeros((5,5))
a
Out[2]:
array([[0., 0., 0., 0., 0.],
       [0., 0., 0., 0., 0.],
       [0., 0., 0., 0., 0.],
       [0., 0., 0., 0., 0.],
       [0., 0., 0., 0., 0.]])
In [3]:
a[2,2] = 10
a
Out[3]:
array([[ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0., 10.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.]])
In [4]:
index_array = np.array([2,2], dtype=int)
In [5]:
%timeit a[tuple(index_array.tolist())]
%timeit a[index_array[0], index_array[1]]
234 ns ± 7.47 ns per loop (mean ± std. dev. of 7 runs, 1,000,000 loops each)
311 ns ± 2.15 ns per loop (mean ± std. dev. of 7 runs, 1,000,000 loops each)
In [6]:
def array_change(array):
    array[1] = 1
In [12]:
array_change(a[2:])
a
Out[12]:
array([[ 0.,  0.,  0.,  0.,  0.],
       [ 1.,  1.,  1.,  1.,  1.],
       [ 0.,  1., 10.,  0.,  0.],
       [ 1.,  1.,  1.,  1.,  1.],
       [ 0.,  0.,  0.,  0.,  0.]])
In [10]:
a
Out[10]:
array([[ 0.,  0.,  0.,  0.,  0.],
       [ 1.,  1.,  1.,  1.,  1.],
       [ 0.,  1., 10.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.]])
In [ ]: