Mảng con liền kề python

An là một thùng chứa đa chiều [thường có kích thước cố định] chứa các mặt hàng cùng loại và kích thước. Số lượng kích thước và mục trong một mảng được xác định bởi nó, là một trong N số nguyên không âm chỉ định kích thước của từng kích thước. Loại mục trong mảng được chỉ định bởi một mục riêng biệt, một trong số đó được liên kết với mỗi ndarray

Như với các đối tượng vùng chứa khác trong Python, nội dung của an có thể được truy cập và sửa đổi bởi mảng [ví dụ: sử dụng N số nguyên] và thông qua các phương thức và thuộc tính của

Khác nhau có thể chia sẻ cùng một dữ liệu, do đó những thay đổi được thực hiện trong một dữ liệu có thể hiển thị trong dữ liệu khác. Nghĩa là, một ndarray có thể là một “khung nhìn” đối với một ndarray khác và dữ liệu mà nó đang đề cập đến được xử lý bởi ndarray “cơ sở”. ndarrays cũng có thể là dạng xem đối với bộ nhớ thuộc sở hữu của Python hoặc đối tượng triển khai

>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6
3 hoặc giao diện

Thí dụ

Mảng 2 chiều có kích thước 2 x 3, bao gồm các phần tử số nguyên 4 byte

>>> x = np.array[[[1, 2, 3], [4, 5, 6]], np.int32]
>>> type[x]

>>> x.shape
[2, 3]
>>> x.dtype
dtype['int32']

Mảng có thể được lập chỉ mục bằng cú pháp giống như bộ chứa Python

>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6

Ví dụ: có thể tạo các khung nhìn của mảng

>>> y = x[:,1]
>>> y
array[[2, 5], dtype=int32]
>>> y[0] = 9 # this also changes the corresponding element in x
>>> y
array[[9, 5], dtype=int32]
>>> x
array[[[1, 9, 3],
       [4, 5, 6]], dtype=int32]

xây dựng mảng

Các mảng mới có thể được tạo bằng cách sử dụng các quy trình được nêu chi tiết trong và cũng bằng cách sử dụng hàm tạo cấp thấp

[hình dạng [, dtype, buffer, offset,. ]]

Một đối tượng mảng đại diện cho một mảng đa chiều, đồng nhất của các mục có kích thước cố định

Mảng lập chỉ mục

Mảng có thể được lập chỉ mục bằng cách sử dụng cú pháp cắt Python mở rộng,

>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6
6. Cú pháp tương tự cũng được sử dụng để truy cập các trường trong một

Xem thêm

.

Bố cục bộ nhớ trong của một ndarray

Một thể hiện của lớp bao gồm một phân đoạn bộ nhớ máy tính một chiều liền kề [thuộc sở hữu của mảng hoặc bởi một số đối tượng khác], được kết hợp với sơ đồ lập chỉ mục ánh xạ N số nguyên vào vị trí của một mục trong khối. Phạm vi mà các chỉ số có thể thay đổi được chỉ định bởi mảng. Mỗi mục chiếm bao nhiêu byte và cách diễn giải các byte được xác định bởi liên kết với mảng

Một đoạn bộ nhớ vốn dĩ là 1 chiều và có nhiều lược đồ khác nhau để sắp xếp các phần tử của mảng N chiều trong khối 1 chiều. NumPy rất linh hoạt và các đối tượng có thể chứa bất kỳ sơ đồ lập chỉ mục theo cấp độ nào. Trong lược đồ phân tầng, chỉ số N chiều \[[n_0, n_1,. , n_{N-1}]\] tương ứng với phần bù [tính bằng byte].

\[n_{\mathrm{offset}} = \sum_{k=0}^{N-1} s_k n_k\]

từ đầu khối nhớ liên kết với mảng. Ở đây, \[s_k\] là các số nguyên xác định giá trị của mảng. Các sơ đồ thứ tự [được sử dụng, ví dụ, trong ngôn ngữ Fortran và Matlab] và thứ tự [được sử dụng trong C] chỉ là các loại lược đồ theo từng bước cụ thể và tương ứng với bộ nhớ có thể được xử lý theo các bước.

\[s_k^{\mathrm{column}} = \mathrm{itemsize} \prod_{j=0}^{k-1} d_j , \quad s_k^{\mathrm{row}} = \mathrm{itemsize} \ . \]

where \[d_j\] = self. hình dạng[j].

Cả hai lệnh C và Fortran đều là , i. e. , bố trí bộ nhớ đơn đoạn, trong đó mọi phần của khối bộ nhớ có thể được truy cập bằng một số kết hợp của các chỉ số

Ghi chú

Mảng liền kề và mảng đơn đoạn đồng nghĩa và được sử dụng thay thế cho nhau trong toàn bộ tài liệu

Mặc dù mảng liền kề kiểu C và kiểu Fortran, có các cờ tương ứng được đặt, có thể được giải quyết bằng các bước trên, các bước thực tế có thể khác. Điều này có thể xảy ra trong hai trường hợp

  1. Nếu

    >>> y = x[:,1]
    >>> y
    array[[2, 5], dtype=int32]
    >>> y[0] = 9 # this also changes the corresponding element in x
    >>> y
    array[[9, 5], dtype=int32]
    >>> x
    array[[[1, 9, 3],
           [4, 5, 6]], dtype=int32]
    
    1 thì đối với bất kỳ chỉ số pháp lý nào
    >>> y = x[:,1]
    >>> y
    array[[2, 5], dtype=int32]
    >>> y[0] = 9 # this also changes the corresponding element in x
    >>> y
    array[[9, 5], dtype=int32]
    >>> x
    array[[[1, 9, 3],
           [4, 5, 6]], dtype=int32]
    
    2. Điều này có nghĩa là trong công thức cho phần bù \[n_k = 0\] và do đó \[s_k n_k = . sải chân [k] là tùy ý. and the value of \[s_k\] = self.strides[k] is arbitrary.

  2. Nếu một mảng không có phần tử [

    >>> y = x[:,1]
    >>> y
    array[[2, 5], dtype=int32]
    >>> y[0] = 9 # this also changes the corresponding element in x
    >>> y
    array[[9, 5], dtype=int32]
    >>> x
    array[[[1, 9, 3],
           [4, 5, 6]], dtype=int32]
    
    3] thì không có chỉ mục hợp lệ và các bước không bao giờ được sử dụng. Bất kỳ mảng nào không có phần tử nào có thể được coi là liền kề kiểu C và kiểu Fortran

Điểm 1. có nghĩa là

>>> y = x[:,1]
>>> y
array[[2, 5], dtype=int32]
>>> y[0] = 9 # this also changes the corresponding element in x
>>> y
array[[9, 5], dtype=int32]
>>> x
array[[[1, 9, 3],
       [4, 5, 6]], dtype=int32]
4 và
>>> y = x[:,1]
>>> y
array[[2, 5], dtype=int32]
>>> y[0] = 9 # this also changes the corresponding element in x
>>> y
array[[9, 5], dtype=int32]
>>> x
array[[[1, 9, 3],
       [4, 5, 6]], dtype=int32]
5 luôn có cùng giá trị cờ tiếp giáp và
>>> y = x[:,1]
>>> y
array[[2, 5], dtype=int32]
>>> y[0] = 9 # this also changes the corresponding element in x
>>> y
array[[9, 5], dtype=int32]
>>> x
array[[[1, 9, 3],
       [4, 5, 6]], dtype=int32]
6. Điều này cũng có nghĩa là ngay cả một mảng chiều cao cũng có thể là kiểu C và kiểu Fortran liền kề nhau cùng một lúc

Một mảng được coi là căn chỉnh nếu độ lệch bộ nhớ cho tất cả các phần tử và chính độ lệch cơ sở là bội số của chính nó. kích thước mục. Hiểu về căn chỉnh bộ nhớ dẫn đến hiệu suất tốt hơn trên hầu hết các phần cứng

Cảnh báo

Nó thường không cho rằng

>>> y = x[:,1]
>>> y
array[[2, 5], dtype=int32]
>>> y[0] = 9 # this also changes the corresponding element in x
>>> y
array[[9, 5], dtype=int32]
>>> x
array[[[1, 9, 3],
       [4, 5, 6]], dtype=int32]
7 đối với mảng liền kề kiểu C hoặc
>>> y = x[:,1]
>>> y
array[[2, 5], dtype=int32]
>>> y[0] = 9 # this also changes the corresponding element in x
>>> y
array[[9, 5], dtype=int32]
>>> x
array[[[1, 9, 3],
       [4, 5, 6]], dtype=int32]
8 đối với mảng liền kề kiểu Fortran là đúng

>>> y = x[:,1]
>>> y
array[[2, 5], dtype=int32]
>>> y[0] = 9 # this also changes the corresponding element in x
>>> y
array[[9, 5], dtype=int32]
>>> x
array[[[1, 9, 3],
       [4, 5, 6]], dtype=int32]
9 có thể được sử dụng để giúp tìm lỗi khi dựa không chính xác vào các bước trong mã tiện ích mở rộng C [xem cảnh báo bên dưới]

Dữ liệu trong new theo thứ tự [C], trừ khi được chỉ định khác, nhưng, chẳng hạn, thường tạo ra theo một sơ đồ khác

Ghi chú

Một số thuật toán trong NumPy hoạt động trên các mảng được sắp xếp tùy ý. Tuy nhiên, một số thuật toán yêu cầu mảng đơn đoạn. Khi một mảng có cấu trúc không đều được chuyển vào các thuật toán như vậy, một bản sao sẽ tự động được tạo

Thuộc tính mảng

Các thuộc tính của mảng phản ánh thông tin nội tại của chính mảng đó. Nói chung, việc truy cập một mảng thông qua các thuộc tính của nó cho phép bạn lấy và đôi khi đặt các thuộc tính nội tại của mảng mà không cần tạo một mảng mới. Các thuộc tính được hiển thị là các phần cốt lõi của một mảng và chỉ một số trong số chúng có thể được đặt lại một cách có ý nghĩa mà không cần tạo một mảng mới. Thông tin về mỗi thuộc tính được đưa ra dưới đây

bố trí bộ nhớ

Các thuộc tính sau chứa thông tin về cách bố trí bộ nhớ của mảng

Thông tin về cách bố trí bộ nhớ của mảng

Bộ kích thước mảng

Tuple byte để bước vào mỗi chiều khi duyệt qua một mảng

Số kích thước mảng

Đối tượng bộ đệm Python trỏ đến đầu dữ liệu của mảng

Số phần tử trong mảng

Độ dài của một phần tử mảng theo byte

Tổng số byte được sử dụng bởi các phần tử của mảng

Đối tượng cơ sở nếu bộ nhớ là từ một số đối tượng khác

Loại dữ liệu

Xem thêm

Đối tượng kiểu dữ liệu được liên kết với mảng có thể được tìm thấy trong thuộc tính

Kiểu dữ liệu của các phần tử trong mảng

thuộc tính khác

Chế độ xem mảng được chuyển đổi

Phần thực của mảng

Phần ảo của mảng

Trình lặp 1-D trên mảng

Giao diện mảng

Xem thêm

.

Phía Python của giao diện mảng

Mặt C của giao diện mảng

giao diện chức năng nước ngoài

Một đối tượng để đơn giản hóa sự tương tác của mảng với mô-đun ctypes

Phương pháp mảng

Một đối tượng có nhiều phương thức hoạt động trên hoặc với mảng theo một cách nào đó, thường trả về một kết quả mảng. Những phương pháp này được giải thích ngắn gọn dưới đây. [Mỗi chuỗi tài liệu của phương pháp có một mô tả đầy đủ hơn. ]

Đối với các phương pháp sau đây cũng có các chức năng tương ứng trong. , , , , , , , , , , , , , , , , , , , , , , , , , , ,

Chuyển đổi mảng

[* lập luận]

Sao chép một phần tử của một mảng sang một đại lượng Python tiêu chuẩn và trả về nó

[]

Trả về mảng dưới dạng danh sách vô hướng Python lồng sâu cấp độ ndarray1

[* lập luận]

Chèn vô hướng vào một mảng [vô hướng được chuyển thành dtype của mảng, nếu có thể]

[[gọi món]]

Bí danh tương thích cho tobyte, với cùng một hành vi

[[gọi món]]

Xây dựng các byte Python chứa các byte dữ liệu thô trong mảng

[fid[, sep, format]]

Ghi mảng vào tệp dưới dạng văn bản hoặc nhị phân [mặc định]

[tập tin]

Kết xuất một mảng của mảng vào tệp đã chỉ định

[]

Trả về dưa của mảng dưới dạng một chuỗi

[dtype[, thứ tự, truyền,. ]]

Bản sao của mảng, chuyển sang một loại được chỉ định

[[tại chỗ]]

Hoán đổi byte của các phần tử mảng

[[gọi món]]

Trả về một bản sao của mảng

[[dtype][, type]]

Chế độ xem mới của mảng có cùng dữ liệu

[dtype[, offset]]

Trả về một trường của mảng đã cho dưới dạng một loại nhất định

[[viết, căn chỉnh, uic]]

Đặt cờ mảng lần lượt là WRITEABLE, ALIGNED, WRITEBACKIFCOPY

[giá trị]

Điền vào mảng với một giá trị vô hướng

Thao tác hình dạng

Để thay đổi hình dạng, thay đổi kích thước và chuyển vị, đối số bộ đơn lẻ có thể được thay thế bằng số nguyên

>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6
05 sẽ được hiểu là n-bộ

[hình dạng[, thứ tự]]

Trả về một mảng chứa cùng dữ liệu với hình dạng mới

[new_shape[, kiểm tra lại]]

Thay đổi hình dạng và kích thước của mảng tại chỗ

[*trục]

Trả về dạng xem của mảng với các trục được chuyển đổi

[trục1, trục2]

Trả về dạng xem của mảng với trục1 và trục2 được hoán đổi cho nhau

[[gọi món]]

Trả về một bản sao của mảng được thu gọn thành một chiều

[[gọi món]]

Trả về một mảng phẳng

[[trục]]

Loại bỏ các trục có độ dài một từ một

Lựa chọn và thao tác mục

Đối với các phương thức mảng lấy từ khóa trục, nó mặc định là Không có. Nếu trục là Không, thì mảng được coi là mảng 1-D. Bất kỳ giá trị nào khác cho trục đại diện cho thứ nguyên mà thao tác sẽ tiến hành

[chỉ số[, trục, ngoài, chế độ]]

Trả về một mảng được hình thành từ các phần tử của a tại các chỉ số đã cho

[chỉ số, giá trị[, chế độ]]

Đặt

>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6
15 cho tất cả n trong chỉ số

[lặp lại [, trục]]

Lặp lại các phần tử của một mảng

[lựa chọn[, ngoài, chế độ]]

Sử dụng một mảng chỉ mục để xây dựng một mảng mới từ một tập hợp các lựa chọn

[[trục, loại, thứ tự]]

Sắp xếp một mảng tại chỗ

[[trục, loại, thứ tự]]

Trả về các chỉ số sẽ sắp xếp mảng này

[kth[, trục, loại, thứ tự]]

Sắp xếp lại các phần tử trong mảng sao cho giá trị của phần tử ở vị trí thứ k bằng vị trí của nó trong một mảng đã sắp xếp

[kth[, trục, loại, thứ tự]]

Trả về các chỉ số sẽ phân vùng mảng này

[v[, bên, bộ phân loại]]

Tìm các chỉ số nơi các phần tử của v nên được chèn vào để duy trì trật tự

[]

Trả về các chỉ số của các phần tử khác không

[điều kiện[, trục, ngoài]]

Trả về các lát đã chọn của mảng này dọc theo trục đã cho

[[độ lệch, trục1, trục2]]

Trả về các đường chéo đã chỉ định

Phép tính

Nhiều phương thức trong số này lấy một đối số có tên là trục. Trong trường hợp này,

  • Nếu trục là Không có [mặc định], mảng được coi là mảng 1-D và thao tác được thực hiện trên toàn bộ mảng. Hành vi này cũng là mặc định nếu self là mảng 0 chiều hoặc mảng vô hướng. [Một mảng vô hướng là một thể hiện của các kiểu/lớp float32, float64, v.v. , trong khi mảng 0 chiều là một cá thể ndarray chứa chính xác một mảng vô hướng. ]

  • Nếu trục là một số nguyên, thì thao tác được thực hiện trên trục đã cho [đối với mỗi mảng con 1-D có thể được tạo dọc theo trục đã cho]

Ví dụ về đối số trục

Mảng 3 chiều có kích thước 3 x 3 x 3, tính tổng trên mỗi trục trong ba trục của nó

>>> x = np.arange[27].reshape[[3,3,3]]
>>> x
array[[[[ 0,  1,  2],
        [ 3,  4,  5],
        [ 6,  7,  8]],
       [[ 9, 10, 11],
        [12, 13, 14],
        [15, 16, 17]],
       [[18, 19, 20],
        [21, 22, 23],
        [24, 25, 26]]]]
>>> x.sum[axis=0]
array[[[27, 30, 33],
       [36, 39, 42],
       [45, 48, 51]]]
>>> # for sum, axis is the first keyword, so we may omit it,
>>> # specifying only its value
>>> x.sum[0], x.sum[1], x.sum[2]
[array[[[27, 30, 33],
        [36, 39, 42],
        [45, 48, 51]]],
 array[[[ 9, 12, 15],
        [36, 39, 42],
        [63, 66, 69]]],
 array[[[ 3, 12, 21],
        [30, 39, 48],
        [57, 66, 75]]]]

Tham số dtype chỉ định loại dữ liệu mà thao tác rút gọn [như tính tổng] sẽ diễn ra. Kiểu dữ liệu giảm mặc định giống với kiểu dữ liệu của self. Để tránh tràn, có thể hữu ích khi thực hiện giảm bằng cách sử dụng loại dữ liệu lớn hơn

Đối với một số phương thức, một đối số out tùy chọn cũng có thể được cung cấp và kết quả sẽ được đặt vào mảng đầu ra đã cho. Đối số out phải là một và có cùng số phần tử. Nó có thể có một loại dữ liệu khác trong trường hợp truyền dữ liệu sẽ được thực hiện

[[trục, ra, keepdim, ban đầu,. ]]

Trả về giá trị lớn nhất dọc theo một trục đã cho

[[trục, ra, giữ độ mờ]]

Trả về chỉ số của các giá trị lớn nhất dọc theo trục đã cho

[[trục, ra, keepdim, ban đầu,. ]]

Trả về mức tối thiểu dọc theo một trục nhất định

[[trục, ra, giữ độ mờ]]

Trả về chỉ số của các giá trị tối thiểu dọc theo trục đã cho

[[trục, ra, giữ độ mờ]]

Giá trị cực đại đến cực đại [tối đa - tối thiểu] dọc theo một trục nhất định

[[tối thiểu, tối đa, hết]]

Trả về một mảng có giá trị giới hạn ở

>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6
33

[]

Phức hợp-liên hợp tất cả các yếu tố

[[số thập phân, ra]]

Trả về a với mỗi phần tử được làm tròn đến số thập phân đã cho

[[offset, axis1, axis2, dtype, out]]

Trả về tổng dọc theo các đường chéo của mảng

[[axis, dtype, out, keepdims,. ]]

Trả về tổng của các phần tử mảng trên trục đã cho

[[axis, dtype, out]]

Trả về tổng tích lũy của các phần tử dọc theo trục đã cho

[[axis, dtype, out, keepdims, where]]

Trả về giá trị trung bình của các phần tử mảng dọc theo trục đã cho

[[trục, dtype, ra, ddof,. ]]

Trả về phương sai của các phần tử mảng, dọc theo trục đã cho

[[trục, dtype, ra, ddof,. ]]

Trả về độ lệch chuẩn của các phần tử mảng dọc theo trục đã cho

[[axis, dtype, out, keepdims,. ]]

Trả về tích của các phần tử mảng trên trục đã cho

[[axis, dtype, out]]

Trả về tích lũy của các phần tử dọc theo trục đã cho

[[trục, ngoài, giữ độ mờ, ở đâu]]

Trả về True nếu tất cả các phần tử đánh giá là True

[[trục, ngoài, giữ độ mờ, ở đâu]]

Trả về True nếu bất kỳ phần tử nào của một đánh giá là True

Các phép toán số học, nhân ma trận và so sánh

Các phép toán số học và so sánh trên được định nghĩa là các phép toán theo phần tử và thường mang lại các đối tượng dưới dạng kết quả

Each of the arithmetic operations [

>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6
48,
>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6
49,
>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6
50,
>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6
51,
>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6
52,
>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6
53,
>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6
54,
>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6
55 or
>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6
56,
>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6
57,
>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6
58,
>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6
59,
>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6
60,
>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6
61,
>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6
62] and the comparisons [
>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6
63,
>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6
64,
>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6
65,
>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6
66,
>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6
67, . Để biết thêm thông tin, xem phần trên

Toán tử so sánh

[giá trị, /]

Tự trả về =giá trị

[giá trị, /]

Tự trả lại == giá trị

[giá trị, /]

trở lại chính mình. = giá trị

Giá trị thực của một mảng []

[/]

Đúng nếu tự khác Sai

Ghi chú

Kiểm tra giá trị thực của một mảng gọi, sẽ phát sinh lỗi nếu số lượng phần tử trong mảng lớn hơn 1, vì giá trị thực của các mảng đó không rõ ràng. Sử dụng và thay vào đó để rõ ràng về ý nghĩa trong những trường hợp như vậy. [Nếu số phần tử là 0, mảng sẽ ước tính là

>>> # The element of x in the *second* row, *third* column, namely, 6.
>>> x[1, 2]
6
80. ]

phép toán một ngôi

[/]

-bản thân

[/]

+bản thân

[bản thân]

[/]

~ bản thân

Môn số học

[giá trị, /]

Trả về bản thân + giá trị

[giá trị, /]

Trả lại giá trị bản thân

[giá trị, /]

Trả về giá trị tự *

[giá trị, /]

Trả về bản thân/giá trị

[giá trị, /]

Trả về bản thân // giá trị

[giá trị, /]

Tự trả lại %giá trị

[giá trị, /]

Trả về divmod[bản thân, giá trị]

[giá trị[, mod]]

Trả về pow[bản thân, giá trị, mod]

[giá trị, /]

Tự trả lại giá trị giá trị

[giá trị, /]

Trả lại bản thân & giá trị

[giá trị, /]

trở lại chính mình. giá trị

[giá trị, /]

Trả về self^value

Ghi chú

  • Bất kỳ đối số thứ ba nào được âm thầm bỏ qua, vì bên dưới chỉ có hai đối số

  • Vì là kiểu dựng sẵn [được viết bằng C], các phương thức đặc biệt của

    >>> y = x[:,1]
    >>> y
    array[[2, 5], dtype=int32]
    >>> y[0] = 9 # this also changes the corresponding element in x
    >>> y
    array[[9, 5], dtype=int32]
    >>> x
    array[[[1, 9, 3],
           [4, 5, 6]], dtype=int32]
    
    01 không được định nghĩa trực tiếp

  • Các hàm được gọi để thực hiện nhiều phương thức số học đặc biệt cho mảng có thể được sửa đổi bằng cách sử dụng

Số học, tại chỗ

[giá trị, /]

Tự trả về+=giá trị

[giá trị, /]

Trả về self-=giá trị

[giá trị, /]

Tự trả về*=giá trị

[giá trị, /]

Tự trả về/=giá trị

[giá trị, /]

Tự trả về //=giá trị

[giá trị, /]

Tự trả lại %=giá trị

[giá trị, /]

Tự trả về**=giá trị

[giá trị, /]

Tự trả về =giá trị

[giá trị, /]

Tự trả về&=giá trị

[giá trị, /]

trở lại chính mình. = giá trị

[giá trị, /]

Tự trả về^=giá trị

Cảnh báo

Các hoạt động tại chỗ sẽ thực hiện phép tính bằng cách sử dụng độ chính xác được quyết định bởi kiểu dữ liệu của hai toán hạng, nhưng sẽ âm thầm hạ thấp kết quả [nếu cần] để nó có thể khớp trở lại vào mảng. Do đó, đối với các phép tính chính xác hỗn hợp,

>>> y = x[:,1]
>>> y
array[[2, 5], dtype=int32]
>>> y[0] = 9 # this also changes the corresponding element in x
>>> y
array[[9, 5], dtype=int32]
>>> x
array[[[1, 9, 3],
       [4, 5, 6]], dtype=int32]
15 có thể khác với
>>> y = x[:,1]
>>> y
array[[2, 5], dtype=int32]
>>> y[0] = 9 # this also changes the corresponding element in x
>>> y
array[[9, 5], dtype=int32]
>>> x
array[[[1, 9, 3],
       [4, 5, 6]], dtype=int32]
16. Ví dụ: giả sử
>>> y = x[:,1]
>>> y
array[[2, 5], dtype=int32]
>>> y[0] = 9 # this also changes the corresponding element in x
>>> y
array[[9, 5], dtype=int32]
>>> x
array[[[1, 9, 3],
       [4, 5, 6]], dtype=int32]
17. Khi đó,
>>> y = x[:,1]
>>> y
array[[2, 5], dtype=int32]
>>> y[0] = 9 # this also changes the corresponding element in x
>>> y
array[[9, 5], dtype=int32]
>>> x
array[[[1, 9, 3],
       [4, 5, 6]], dtype=int32]
18 khác với
>>> y = x[:,1]
>>> y
array[[2, 5], dtype=int32]
>>> y[0] = 9 # this also changes the corresponding element in x
>>> y
array[[9, 5], dtype=int32]
>>> x
array[[[1, 9, 3],
       [4, 5, 6]], dtype=int32]
19. trong khi cả hai đều thực hiện cùng một phép tính, thì
>>> y = x[:,1]
>>> y
array[[2, 5], dtype=int32]
>>> y[0] = 9 # this also changes the corresponding element in x
>>> y
array[[9, 5], dtype=int32]
>>> x
array[[[1, 9, 3],
       [4, 5, 6]], dtype=int32]
20 đưa kết quả khớp trở lại vào
>>> y = x[:,1]
>>> y
array[[2, 5], dtype=int32]
>>> y[0] = 9 # this also changes the corresponding element in x
>>> y
array[[9, 5], dtype=int32]
>>> x
array[[[1, 9, 3],
       [4, 5, 6]], dtype=int32]
21, trong khi đó
>>> y = x[:,1]
>>> y
array[[2, 5], dtype=int32]
>>> y[0] = 9 # this also changes the corresponding element in x
>>> y
array[[9, 5], dtype=int32]
>>> x
array[[[1, 9, 3],
       [4, 5, 6]], dtype=int32]
19 lại liên kết tên
>>> y = x[:,1]
>>> y
array[[2, 5], dtype=int32]
>>> y[0] = 9 # this also changes the corresponding element in x
>>> y
array[[9, 5], dtype=int32]
>>> x
array[[[1, 9, 3],
       [4, 5, 6]], dtype=int32]
21 với kết quả

Phép nhân ma trận

[giá trị, /]

Trở lại

Ghi chú

Toán tử ma trận

>>> y = x[:,1]
>>> y
array[[2, 5], dtype=int32]
>>> y[0] = 9 # this also changes the corresponding element in x
>>> y
array[[9, 5], dtype=int32]
>>> x
array[[[1, 9, 3],
       [4, 5, 6]], dtype=int32]
25 và
>>> y = x[:,1]
>>> y
array[[2, 5], dtype=int32]
>>> y[0] = 9 # this also changes the corresponding element in x
>>> y
array[[9, 5], dtype=int32]
>>> x
array[[[1, 9, 3],
       [4, 5, 6]], dtype=int32]
26 đã được giới thiệu trong Python 3. 5 sau PEP 465 và toán tử
>>> y = x[:,1]
>>> y
array[[2, 5], dtype=int32]
>>> y[0] = 9 # this also changes the corresponding element in x
>>> y
array[[9, 5], dtype=int32]
>>> x
array[[[1, 9, 3],
       [4, 5, 6]], dtype=int32]
25 đã được giới thiệu trong NumPy 1. 10. 0. Thông tin thêm có thể được tìm thấy trong tài liệu

phương pháp đặc biệt

Đối với chức năng thư viện tiêu chuẩn

[]

Được sử dụng nếu được gọi trên một mảng

[bản ghi nhớ, /]

Được sử dụng nếu được gọi trên một mảng

[]

để ngâm chua

[tiểu bang, /]

để giải nén

tùy chỉnh cơ bản

[*args, **kwargs]

[[dtype], /]

Trả về một tham chiếu mới cho self nếu dtype không được cung cấp hoặc một mảng mới có kiểu dữ liệu được cung cấp nếu dtype khác với dtype hiện tại của mảng

[mảng[, bối cảnh], /]

Trả về dạng xem có cùng loại với bản thân

Tùy chỉnh vùng chứa. [thấy ]

[/]

Trả lại len[tự]

[Chìa khóa, /]

Tự trả về[key]

[giá trị cốt lõi, /]

Đặt self[key] thành giá trị

[Chìa khóa, /]

Tự trả lại chìa khóa

Chuyển đổi; . Chúng chỉ hoạt động trên các mảng có một phần tử trong đó và trả về giá trị vô hướng thích hợp

Chủ Đề