บางทีตัวอย่างที่มีค่าอาร์เรย์ 12 ค่าจะช่วยได้:
In [207]: x=np.arange(12).reshape(3,4).copy()
In [208]: x.flags
Out[208]: 
  C_CONTIGUOUS : True
  F_CONTIGUOUS : False
  OWNDATA : True
  ...
In [209]: x.T.flags
Out[209]: 
  C_CONTIGUOUS : False
  F_CONTIGUOUS : True
  OWNDATA : False
  ...
C orderค่าอยู่ในลำดับที่พวกเขาได้รับการสร้างขึ้นใน. คนย้ายไม่ได้
In [212]: x.reshape(12,)   
Out[212]: array([ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11])
In [213]: x.T.reshape(12,)
Out[213]: array([ 0,  4,  8,  1,  5,  9,  2,  6, 10,  3,  7, 11])
คุณจะได้รับมุมมอง 1d ของทั้งสองอย่าง
In [214]: x1=x.T
In [217]: x.shape=(12,)
รูปร่างxยังสามารถเปลี่ยนแปลงได้
In [220]: x1.shape=(12,)
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-220-cf2b1a308253> in <module>()
----> 1 x1.shape=(12,)
AttributeError: incompatible shape for a non-contiguous array
แต่รูปร่างของทรานสโพสไม่สามารถเปลี่ยนแปลงได้ dataยังคงอยู่ใน0,1,2,3,4...การสั่งซื้อที่ไม่สามารถเข้าถึงเข้าถึงได้เป็น0,4,8...ในอาร์เรย์ 1D
แต่x1สามารถเปลี่ยนสำเนาได้:
In [227]: x2=x1.copy()
In [228]: x2.flags
Out[228]: 
  C_CONTIGUOUS : True
  F_CONTIGUOUS : False
  OWNDATA : True
  ...
In [229]: x2.shape=(12,)
การมองไปที่stridesอาจช่วยได้ ความก้าวคือระยะทาง (เป็นไบต์) ที่ต้องก้าวเพื่อไปยังค่าถัดไป สำหรับอาร์เรย์ 2d จะมีค่า stride 2 ค่า:
In [233]: x=np.arange(12).reshape(3,4).copy()
In [234]: x.strides
Out[234]: (16, 4)
ในการไปยังแถวถัดไปขั้นตอนที่ 16 ไบต์คอลัมน์ถัดไปเท่านั้น 4
In [235]: x1.strides
Out[235]: (4, 16)
เปลี่ยนเพียงแค่เปลี่ยนลำดับของการก้าว แถวถัดไปมีเพียง 4 ไบต์นั่นคือตัวเลขถัดไป    
In [236]: x.shape=(12,)
In [237]: x.strides
Out[237]: (4,)
การเปลี่ยนรูปร่างยังเปลี่ยนก้าว - เพียงแค่ก้าวผ่านบัฟเฟอร์ครั้งละ 4 ไบต์
In [238]: x2=x1.copy()
In [239]: x2.strides
Out[239]: (12, 4)
แม้ว่าจะx2ดูเหมือน แต่x1ก็มีบัฟเฟอร์ข้อมูลของตัวเองโดยมีค่าในลำดับที่แตกต่างกัน ตอนนี้คอลัมน์ถัดไปมีขนาด 4 ไบต์ในขณะที่แถวถัดไปคือ 12 (3 * 4)
In [240]: x2.shape=(12,)
In [241]: x2.strides
Out[241]: (4,)
และเช่นเดียวกับxการเปลี่ยนรูปร่างไป 1 (4,)วันจะช่วยลดความก้าวหน้าในการ  
สำหรับการx1ที่มีข้อมูลใน0,1,2,...การสั่งซื้อที่มีอยู่ไม่ก้าว 1D 0,4,8...ที่จะให้
__array_interface__ เป็นอีกวิธีที่มีประโยชน์ในการแสดงข้อมูลอาร์เรย์:
In [242]: x1.__array_interface__
Out[242]: 
{'strides': (4, 16),
 'typestr': '<i4',
 'shape': (4, 3),
 'version': 3,
 'data': (163336056, False),
 'descr': [('', '<i4')]}
x1อยู่บัฟเฟอร์ข้อมูลจะเป็นเช่นเดียวกับxกับที่หุ้นข้อมูล  x2มีที่อยู่บัฟเฟอร์ที่แตกต่างกัน
คุณยังสามารถทดลองเพิ่มorder='F'พารามิเตอร์ให้กับคำสั่งcopyandreshape