Python 什么';当self.ndim<;2.
文件说 T-与self.transpose()相同,只是self.ndim<2时返回self 另外,ndarray.transpose(*轴)表示 对于一维阵列,这没有任何影响 这不是意味着同样的事情吗 下面是一个小演示片段:Python 什么';当self.ndim<;2.,python,numpy,Python,Numpy,文件说 T-与self.transpose()相同,只是self.ndim
>>> import numpy as np
>>> print np.__version__
1.5.1rc1
>>> a = np.arange(7)
>>> print a, a.T, a.transpose()
[0 1 2 3 4 5 6] [0 1 2 3 4 5 6] [0 1 2 3 4 5 6]
无论秩如何,
.T
属性和.transpose()
方法都是相同的,它们都返回数组的转置
在秩1数组的情况下,
.T
和.transpose()
不做任何事情,它们都返回数组。看起来.T
只是一种方便的表示法,.transpose(*axes)
是更通用的函数,旨在提供更大的灵活性,因为可以指定轴。它们显然不是用Python实现的,因此必须查看C代码来检查这一点。没有任何有效的区别(它们都将视图返回到原始数组中)。事实上,文档似乎对ndarray.T
有错误<代码>自我似乎未返回。换句话说,x不是x.T
,即使它是一维数组。(内容是相同的,但每次都会返回一个新对象,该对象具有相同内容的视图)。@Joe Kington,感谢您提供的信息。我想这意味着.T
和transpose()
调用都会返回数组的转置。事实上,.T
返回数组的转置,而转置
是一种更通用的方法,可以指定轴(转置(*轴)
,默认值使调用转置()
相当于.T
)。