Python学习笔记02基础 Array分析(一)

python源码分析

def array(p_object, dtype=None, copy=True, order='K', subok=False, ndmin=0): 不完全解释

array():生成一个数组

object :数组类型(为任何对象提供一个数组接口,对象应__array__ method 返回一个数组)

dtype : data-type, optional(想得到的数据类型)如果未给出,则该类型将被确定为保持序列中的对象所需的最小类型。

copy : bool, optional,如果为true(默认),则复制对象。否则,如果__array__ 返回一个副本,

order : {'K', 'A', 'C', 'F'}, optional 详情见源码

subok : bool, optional 如果为真,则子类将被传递,否则返回的数组将被迫为基类数组(默认)。

ndmin : int, optional 指定产生的数组应该具有的最小维数。这些维数将根据需要预先提交给形状,以满足这一要求。

Returns

-------

out : ndarray

An array object satisfying the specified requirements.

See Also

--------

empty, empty_like, zeros, zeros_like, ones, ones_like, full, full_like

Notes:

当Order是‘a’和‘object’是一个既不是‘c’也不是‘f’顺序的数组,并且一个副本由于dtype的改变而被迫,那么结果的顺序不一定是‘c’,这可能是一个错误。

举例见下文

 

def array(p_object, dtype=None, copy=True, order='K', subok=False, ndmin=0):

# real signature unknown; restored from __doc__

"""

array(object, dtype=None, copy=True, order='K', subok=False, ndmin=0)

Create an array.

Parameters

----------

object : array_like

An array, any object exposing the array interface, an object whose

__array__ method returns an array, or any (nested) sequence.

dtype : data-type, optional

The desired data-type for the array. If not given, then the type will

be determined as the minimum type required to hold the objects in the

sequence. This argument can only be used to 'upcast' the array. For

downcasting, use the .astype(t) method.

copy : bool, optional

If true (default), then the object is copied. Otherwise, a copy will

only be made if __array__ returns a copy, if obj is a nested sequence,

or if a copy is needed to satisfy any of the other requirements

(`dtype`, `order`, etc.).

order : {'K', 'A', 'C', 'F'}, optional

Specify the memory layout of the array. If object is not an array, the

newly created array will be in C order (row major) unless 'F' is

specified, in which case it will be in Fortran order (column major).

If object is an array the following holds.

===== ========= ===================================================

order no copy copy=True

===== ========= ===================================================

'K' unchanged F & C order preserved, otherwise most similar order

'A' unchanged F order if input is F and not C, otherwise C order

'C' C order C order

'F' F order F order

===== ========= ===================================================

When ``copy=False`` and a copy is made for other reasons, the result is

the same as if ``copy=True``, with some exceptions for `A`, see the

Notes section. The default order is 'K'.

subok : bool, optional

If True, then sub-classes will be passed-through, otherwise

the returned array will be forced to be a base-class array (default).

ndmin : int, optional

Specifies the minimum number of dimensions that the resulting

array should have. Ones will be pre-pended to the shape as

needed to meet this requirement.

Returns

-------

out : ndarray

An array object satisfying the specified requirements.

See Also

--------

empty, empty_like, zeros, zeros_like, ones, ones_like, full, full_like

Notes

-----

When order is 'A' and `object` is an array in neither 'C' nor 'F' order,

and a copy is forced by a change in dtype, then the order of the result is

not necessarily 'C' as expected. This is likely a bug.

Examples

--------

>>> np.array([1, 2, 3])

array([1, 2, 3])

Upcasting:

>>> np.array([1, 2, 3.0])

array([ 1., 2., 3.])

More than one dimension:

>>> np.array([[1, 2], [3, 4]])

array([[1, 2],

[3, 4]])

Minimum dimensions 2:

>>> np.array([1, 2, 3], ndmin=2)

array([[1, 2, 3]])

Type provided:

>>> np.array([1, 2, 3], dtype=complex)

array([ 1.+0.j, 2.+0.j, 3.+0.j])

Data-type consisting of more than one element:

>>> x = np.array([(1,2),(3,4)],dtype=[('a','<i4'),('b','<i4')])

>>> x['a']

array([1, 3])

Creating an array from sub-classes:

>>> np.array(np.mat('1 2; 3 4'))

array([[1, 2],

[3, 4]])

>>> np.array(np.mat('1 2; 3 4'), subok=True)

matrix([[1, 2],

[3, 4]])

"""

pass

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值