Hướng dẫn python delete array elements - python xóa phần tử mảng

Giới thiệu

Hướng dẫn này sẽ trải qua một số cách phổ biến để loại bỏ các yếu tố khỏi các mảng/danh sách Python.

Mảng hoặc danh sách?

Biểu diễn trình tự tích hợp của Python là một danh sách, được định nghĩa là một chuỗi các yếu tố không đồng nhất, trong đó mỗi phần tử có một chỉ số dứt khoát trong chuỗi. Để sử dụng các mảng, bạn phải nhập mô -đun

[10, 20, 30, 50, 60, 70, 80, 90, 100]
4, được giao với chính Python, nhưng danh sách được sử dụng phổ biến hơn nhiều.

Ngoài ra - vì cú pháp danh sách trông rất giống cú pháp mà bạn sử dụng để xác định các mảng trong các ngôn ngữ lập trình khác - thuật ngữ "mảng" và "danh sách" thường được sử dụng thay thế cho nhau, mặc dù chúng không phải là cùng một cấu trúc dữ liệu. Điều đáng chú ý là nhiều phương pháp này hoạt động cả cho một mảng và danh sách!

Sử dụng Remove ()

Một cách thích hợp, hàm

[10, 20, 30, 50, 60, 70, 80, 90, 100]
5 có thể được sử dụng trên bất kỳ mảng hoặc danh sách nào trong Python. Để sử dụng nó, chúng ta có thể chỉ cần chuyển giá trị của phần tử chúng ta muốn xóa. Hãy tưởng tượng chúng ta có mảng sau:

array = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]

Để loại bỏ, giả sử, phần tử

[10, 20, 30, 50, 60, 70, 80, 90, 100]
6, chúng ta chỉ cần viết:

array.remove(40)

Kết quả là cùng một mảng mà không có giá trị

[10, 20, 30, 50, 60, 70, 80, 90, 100]
6:

[10, 20, 30, 50, 60, 70, 80, 90, 100]

Sử dụng pop ()

Hàm

[10, 20, 30, 50, 60, 70, 80, 90, 100]
8 chấp nhận chỉ mục của phần tử chúng tôi muốn xóa. Nếu chúng ta có cùng một mảng/danh sách như trước đây (với các giá trị từ 10 đến 100), chúng ta có thể viết một cái gì đó như sau:

index = 3
array.pop(index)

Nếu chúng tôi in kết quả của phương thức POP, đó sẽ là giá trị

[10, 20, 30, 50, 60, 70, 80, 90, 100]
6:

[10, 20, 30, 50, 60, 70, 80, 90, 100]

Tương tự như cách

[10, 20, 30, 50, 60, 70, 80, 90, 100]
8 hoạt động trong cấu trúc dữ liệu ngăn xếp, ở đây
[10, 20, 30, 50, 60, 70, 80, 90, 100]
8 cũng trả về giá trị mà nó vừa được xóa.

Sự khác biệt duy nhất là với các mảng, chúng ta có thể loại bỏ một yếu tố tùy ý. Với các ngăn xếp, chỉ có thể loại bỏ phần tử hàng đầu (tức là phần cuối cùng được thêm vào) có thể được gỡ bỏ.

Sử dụng del

index = 3
array.pop(index)
2 là một từ khóa Python được sử dụng để xóa các đối tượng. Thay đổi hành vi chính xác của nó tùy thuộc vào ngữ cảnh, vì vậy chúng tôi cũng có thể sử dụng nó để loại bỏ các yếu tố danh sách, mặc dù, các mảng không hỗ trợ điều này. Một lần nữa, chúng ta hãy lấy cùng một mảng và chỉ mục như trước:

array = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
index = 3

Để loại bỏ phần tử tại Index

index = 3
array.pop(index)
3, chúng tôi chỉ cần nhập như sau:

del array[index]

Nếu bây giờ chúng tôi in nội dung của mảng của chúng tôi, chúng tôi sẽ nhận được đầu ra sau:

[10, 20, 30, 50, 60, 70, 80, 90, 100]

Sử dụng mảng numpy

Các mảng Numpy thường được sử dụng (đặc biệt là trong học máy), vì vậy hãy hiển thị một trong những cách để loại bỏ một phần tử khỏi mảng

index = 3
array.pop(index)
4. Trước khi sử dụng
index = 3
array.pop(index)
4, cần phải nhập nó với:

import numpy as np

Để tạo một mảng

index = 3
array.pop(index)
4, chúng tôi có thể bọc danh sách hiện tại của mình bằng cách sử dụng
index = 3
array.pop(index)
7 như vậy:

a = np.array(array)

Ngoài ra, chúng tôi cũng có thể khai báo một mảng mới bên trong chính phương thức gọi chính nó:

array.remove(40)
0

Bây giờ để xóa một phần tử tại Index

index = 3
array.pop(index)
3, chúng tôi sử dụng mã sau:

Kiểm tra hướng dẫn thực hành của chúng tôi, thực tế để học Git, với các thực hành tốt nhất, các tiêu chuẩn được công nghiệp chấp nhận và bao gồm bảng gian lận. Ngừng các lệnh git googling và thực sự tìm hiểu nó!

array.remove(40)
1

index = 3
array.pop(index)
9 là một phương pháp tĩnh được khai báo trong mô -đun
index = 3
array.pop(index)
4. Nó chấp nhận mảng và chỉ mục của phần tử để xóa.

Phương thức trả về một mảng mới mà không có phần tử bị loại bỏ:

[10, 20, 30, 50, 60, 70, 80, 90, 100]

Sự kết luận

Có nhiều cách khác nhau để loại bỏ một yếu tố danh sách trong Python. Đôi khi chúng ta có thể muốn xóa một phần tử theo chỉ mục và đôi khi theo giá trị. Đôi khi chúng tôi đang sử dụng mảng mặc định của Python và đôi khi là mảng

index = 3
array.pop(index)
4.

Trong tất cả các trường hợp này, thật tốt khi có nhiều tùy chọn để giúp chúng tôi quyết định sử dụng kỹ thuật nào.

Không phải là một người numpy, tôi đã bắn:

array.remove(40)
3

Theo các bài kiểm tra của tôi, điều này vượt trội so với

[10, 20, 30, 50, 60, 70, 80, 90, 100]
2. Tôi không biết tại sao đó là trường hợp, có thể là do kích thước nhỏ của mảng ban đầu?

array.remove(40)
4

Đó là một sự khác biệt khá quan trọng (theo hướng ngược lại với những gì tôi đang mong đợi), có ai có ý tưởng tại sao điều này sẽ xảy ra không?

Thậm chí kỳ lạ hơn, việc vượt qua

[10, 20, 30, 50, 60, 70, 80, 90, 100]
2 Một danh sách thực hiện tồi tệ hơn việc lặp lại trong danh sách và đưa ra các chỉ số đơn.

array.remove(40)
5

Chỉnh sửa: Nó dường như liên quan đến kích thước của mảng. Với các mảng lớn,

[10, 20, 30, 50, 60, 70, 80, 90, 100]
2 nhanh hơn đáng kể.

array.remove(40)
6

Rõ ràng, đây là tất cả đều không liên quan, vì bạn nên luôn luôn rõ ràng và tránh phát minh lại bánh xe, nhưng tôi thấy nó hơi thú vị, vì vậy tôi nghĩ rằng tôi sẽ để nó ở đây.

numpy.delete (mảng, obj, axis = none) [nguồn]#delete(arr, obj, axis=None)[source]#delete(arr, obj, axis=None)[source]#

Trả về một mảng mới với các mảng phụ dọc theo một trục bị xóa. Đối với một mảng một chiều, điều này trả về các mục đó không được trả về bởi ARR [OBJ].

Parametersarrarray_likearrarray_likearrarray_like

Mảng đầu vào.

objslice, int hoặc mảng intsslice, int or array of intsslice, int or array of ints

Chỉ ra các chỉ số của các mảng con để loại bỏ dọc theo trục được chỉ định.

Đã thay đổi trong phiên bản 1.19.0: Các chỉ số Boolean hiện được coi là mặt nạ của các phần tử để loại bỏ, thay vì được đúc vào số nguyên 0 và 1.Boolean indices are now treated as a mask of elements to remove, rather than being cast to the integers 0 and 1.Boolean indices are now treated as a mask of elements to remove, rather than being cast to the integers 0 and 1.

Trục, tùy chọnint, optionalint, optional

Trục dọc theo đó để xóa Subarray được xác định bởi OBJ. Nếu trục là không, OBJ được áp dụng cho mảng phẳng.

ReturnSoutNDarrayoutndarrayoutndarray

Một bản sao của mảng với các yếu tố được chỉ định bởi obj đã bị xóa. Lưu ý rằng

array.remove(40)
40 không xảy ra tại chỗ. Nếu trục là không, ra là một mảng phẳng.

Xem thêm

array.remove(40)
41

Chèn các phần tử vào một mảng.

array.remove(40)
42

Phụ lục các phần tử ở cuối một mảng.

Ghi chú

Thường thì tốt hơn là sử dụng mặt nạ Boolean. Ví dụ:

[10, 20, 30, 50, 60, 70, 80, 90, 100]
0

Tương đương với

array.remove(40)
43, nhưng cho phép sử dụng thêm mặt nạ.

Ví dụ

[10, 20, 30, 50, 60, 70, 80, 90, 100]
2
[10, 20, 30, 50, 60, 70, 80, 90, 100]
3

Làm cách nào để loại bỏ một phần tử khỏi một mảng trong Python?

Bạn có thể sử dụng phương thức pop () để loại bỏ một phần tử khỏi mảng.use the pop() method to remove an element from the array.use the pop() method to remove an element from the array.

Làm cách nào để loại bỏ một phần tử trong mảng?

Hàm pop (): Phương thức này được sử dụng để loại bỏ các phần tử từ cuối một mảng.Hàm shift (): Phương thức này được sử dụng để loại bỏ các phần tử từ đầu một mảng.Hàm splice (): Phương pháp này được sử dụng để loại bỏ các phần tử khỏi chỉ số cụ thể của một mảng.: This method is use to remove elements from the end of an array. shift() function: This method is use to remove elements from the start of an array. splice() function: This method is use to remove elements from the specific index of an array.: This method is use to remove elements from the end of an array. shift() function: This method is use to remove elements from the start of an array. splice() function: This method is use to remove elements from the specific index of an array.

Làm thế nào để bạn loại bỏ một đối tượng khỏi một mảng trong Python?

Để loại bỏ một phần tử khỏi một mảng, các nhà phát triển cũng có thể sử dụng phương thức pop () của mảng.Nếu chúng ta chỉ cần sử dụng pop () mà không cần truyền bất kỳ tham số nào, thì nó sẽ loại bỏ phần tử khỏi chỉ mục cuối cùng (n th).Nhưng nếu chúng tôi chỉ định giá trị chỉ mục của mảng, nó sẽ loại bỏ phần tử cụ thể đó khỏi mảng.use the pop() method of the array. If we simply use pop() without passing any parameter, then it will remove the element from the last (n th) index. But if we specify the index value of the array, it will remove that particular element from the array.use the pop() method of the array. If we simply use pop() without passing any parameter, then it will remove the element from the last (n th) index. But if we specify the index value of the array, it will remove that particular element from the array.