# -*- coding: utf-8 -*-
__author__ = 'zzw'
import numpy as np
from numpy.lib.stride_tricks import as_strided
a = np.arange(9).reshape(3,3)
b = as_strided(a,shape=(2, 2, 2, 2), strides=(a.itemsize*np.array([2,2,2,2])))
print [(i, j, k, z) for i in range(3) for j in range(3) for k in range(3) for z in range(3)]
print ([(27*i+3*j+9*k+z) for i in range(3) for j in range(3) for k in range(3) for z in range(3)])
print [(i, j, k, z) for i in range(2) for j in range(2) for k in range(2) for z in range(2)]
print [i * 3 + j + k * 3+z for i in range(2) for j in range(2) for k in range(2) for z in range(2)]
c = as_strided(a, shape = (2, 2, 2,2), strides=(a.itemsize *np.array( [3, 1, 3, 1])))
print c
Python as_stried函数
最新推荐文章于 2022-05-13 17:17:14 发布