Hướng dẫn how do i find an element in an array python? - làm cách nào để tìm một phần tử trong một mảng python?


Lưu ý: Python không có hỗ trợ tích hợp cho các mảng, nhưng danh sách Python có thể được sử dụng thay thế. Python does not have built-in support for Arrays, but Python Lists can be used instead.


Mảng

Lưu ý: Tuy nhiên, trang này chỉ cho bạn cách sử dụng danh sách dưới dạng mảng, để hoạt động với các mảng trong Python, bạn sẽ phải nhập thư viện, như thư viện Numpy. This page shows you how to use LISTS as ARRAYS, however, to work with arrays in Python you will have to import a library, like the NumPy library.

Mảng được sử dụng để lưu trữ nhiều giá trị trong một biến duy nhất:

Thí dụ

Tạo một mảng chứa tên xe:

Ô tô = ["Ford", "Volvo", "BMW"]

Hãy tự mình thử »


Một mảng là gì?

Một mảng là một biến đặc biệt, có thể chứa nhiều hơn một giá trị tại một thời điểm.

Nếu bạn có một danh sách các mặt hàng (ví dụ danh sách các tên xe hơi), việc lưu trữ xe trong các biến đơn có thể trông như thế này:

car1 = "ford" car2 = "volvo" car3 = "bmw"
car2 = "Volvo"
car3 = "BMW"

Tuy nhiên, điều gì sẽ xảy ra nếu bạn muốn lặp qua những chiếc xe và tìm một chiếc cụ thể? Và điều gì sẽ xảy ra nếu bạn không có 3 chiếc xe, mà là 300?

Giải pháp là một mảng!

Một mảng có thể chứa nhiều giá trị dưới một tên duy nhất và bạn có thể truy cập các giá trị bằng cách tham khảo số chỉ mục.


Truy cập các yếu tố của một mảng

Bạn tham khảo một phần tử mảng bằng cách tham khảo số chỉ mục.

Thí dụ

Tạo một mảng chứa tên xe:

Ô tô = ["Ford", "Volvo", "BMW"]

Hãy tự mình thử »


Một mảng là gì?

Một mảng là một biến đặc biệt, có thể chứa nhiều hơn một giá trị tại một thời điểm.

Thí dụ

Tạo một mảng chứa tên xe:

Ô tô = ["Ford", "Volvo", "BMW"]

Hãy tự mình thử »

Một mảng là gì? The length of an array is always one more than the highest array index.



Một mảng là một biến đặc biệt, có thể chứa nhiều hơn một giá trị tại một thời điểm.

Nếu bạn có một danh sách các mặt hàng (ví dụ danh sách các tên xe hơi), việc lưu trữ xe trong các biến đơn có thể trông như thế này:


car1 = "ford" car2 = "volvo" car3 = "bmw"

Tuy nhiên, điều gì sẽ xảy ra nếu bạn muốn lặp qua những chiếc xe và tìm một chiếc cụ thể? Và điều gì sẽ xảy ra nếu bạn không có 3 chiếc xe, mà là 300?

Thí dụ

Tạo một mảng chứa tên xe:

Ô tô = ["Ford", "Volvo", "BMW"]

Hãy tự mình thử »


Một mảng là gì?

Một mảng là một biến đặc biệt, có thể chứa nhiều hơn một giá trị tại một thời điểm.

Nếu bạn có một danh sách các mặt hàng (ví dụ danh sách các tên xe hơi), việc lưu trữ xe trong các biến đơn có thể trông như thế này:

Thí dụ

Tạo một mảng chứa tên xe:

Ô tô = ["Ford", "Volvo", "BMW"]

Hãy tự mình thử »

Một mảng là gì? The list's

def __eq__(self, other):
    return self.Value == other.Value
3 method only removes the first occurrence of the specified value.


Một mảng là một biến đặc biệt, có thể chứa nhiều hơn một giá trị tại một thời điểm.

Nếu bạn có một danh sách các mặt hàng (ví dụ danh sách các tên xe hơi), việc lưu trữ xe trong các biến đơn có thể trông như thế này:

car1 = "ford" car2 = "volvo" car3 = "bmw"Tuy nhiên, điều gì sẽ xảy ra nếu bạn muốn lặp qua những chiếc xe và tìm một chiếc cụ thể? Và điều gì sẽ xảy ra nếu bạn không có 3 chiếc xe, mà là 300?
Giải pháp là một mảng!Một mảng có thể chứa nhiều giá trị dưới một tên duy nhất và bạn có thể truy cập các giá trị bằng cách tham khảo số chỉ mục.
Truy cập các yếu tố của một mảngBạn tham khảo một phần tử mảng bằng cách tham khảo số chỉ mục.
Sửa đổi giá trị của mục mảng đầu tiên: Ô tô [0] = "Toyota"
Chiều dài của một mảngSử dụng phương thức
>>> li
['a', 'b', 'new', 'mpilgrim', 'z', 'example', 'new', 'two', 'elements']
>>> 'example' in li
True
>>> 'damn' in li
False
7 để trả về độ dài của một mảng (số lượng phần tử trong một mảng).
Trả về số lượng phần tử trong mảng
>>> li
['a', 'b', 'new', 'mpilgrim', 'z', 'example', 'new', 'two', 'elements']
>>> 'example' in li
True
>>> 'damn' in li
False
8:
x = len (ô tô)
Lưu ý: Độ dài của một mảng luôn nhiều hơn một chỉ số mảng cao nhất.Vòng lặp các yếu tố mảng
Bạn có thể sử dụng vòng
>>> li
['a', 'b', 'new', 'mpilgrim', 'z', 'example', 'new', 'two', 'elements']
>>> 'example' in li
True
>>> 'damn' in li
False
9 để lặp qua tất cả các phần tử của một mảng.
Thêm các phần tử mảng
Bạn có thể sử dụng phương thức
def __eq__(self, other):
    return self.Value == other.Value
0 để thêm một phần tử vào một mảng.
Thêm một phần tử nữa vào mảng
>>> li
['a', 'b', 'new', 'mpilgrim', 'z', 'example', 'new', 'two', 'elements']
>>> 'example' in li
True
>>> 'damn' in li
False
8:
ô tô.append ("Honda")Loại bỏ các yếu tố mảng
Bạn có thể sử dụng phương thức
def __eq__(self, other):
    return self.Value == other.Value
2 để xóa một phần tử khỏi mảng.
Bạn cũng có thể sử dụng phương thức
def __eq__(self, other):
    return self.Value == other.Value
3 để xóa một phần tử khỏi mảng.
Xóa phần tử có giá trị "Volvo": Cars.Remove ("Volvo")

Lưu ý: Python không có hỗ trợ tích hợp cho các mảng, nhưng danh sách Python có thể được sử dụng thay thế. Python does not have built-in support for Arrays, but Python Lists can be used instead.



218

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Cách tốt để tìm chỉ số của một yếu tố trong danh sách trong Python là gì? Lưu ý rằng danh sách có thể không được sắp xếp.
Note that the list may not be sorted.

Có cách nào để chỉ định nhà điều hành so sánh nào để sử dụng không?

Hướng dẫn how do i find an element in an array python? - làm cách nào để tìm một phần tử trong một mảng python?

hỏi ngày 3 tháng 3 năm 2009 lúc 1:45Mar 3, 2009 at 1:45

Hướng dẫn how do i find an element in an array python? - làm cách nào để tìm một phần tử trong một mảng python?

2

Từ lặn vào Python:

>>> li
['a', 'b', 'new', 'mpilgrim', 'z', 'example', 'new', 'two', 'elements']
>>> li.index("example")
5

Stivlo

81.4K31 Huy hiệu vàng141 Huy hiệu bạc198 Huy hiệu đồng31 gold badges141 silver badges198 bronze badges

Đã trả lời ngày 3 tháng 3 năm 2009 lúc 1:52Mar 3, 2009 at 1:52

3

Nếu bạn chỉ muốn tìm hiểu xem một phần tử có trong danh sách hay không:

>>> li
['a', 'b', 'new', 'mpilgrim', 'z', 'example', 'new', 'two', 'elements']
>>> 'example' in li
True
>>> 'damn' in li
False

Đã trả lời ngày 17 tháng 2 năm 2011 lúc 10:00Feb 17, 2011 at 10:00

EduardoeduardoEduardo

1.7511 Huy hiệu vàng10 Huy hiệu bạc5 Huy hiệu đồng1 gold badge10 silver badges5 bronze badges

0

Cách tốt nhất có lẽ là sử dụng phương thức danh sách .index.

Đối với các đối tượng trong danh sách, bạn có thể làm một cái gì đó như:

def __eq__(self, other):
    return self.Value == other.Value

với bất kỳ xử lý đặc biệt nào bạn cần.

Bạn cũng có thể sử dụng câu lệnh FOR/IN với Tái lập (ARR)

Ví dụ về việc tìm kiếm chỉ mục của một mặt hàng có giá trị> 100.

for index, item in enumerate(arr):
    if item > 100:
        return index, item

Nguồn

tedder42

22.4K11 Huy hiệu vàng83 Huy hiệu bạc96 Huy hiệu Đồng11 gold badges83 silver badges96 bronze badges

Đã trả lời ngày 3 tháng 3 năm 2009 lúc 1:51Mar 3, 2009 at 1:51

Brian R. Bondybrian R. BondyBrian R. Bondy

332K122 Huy hiệu vàng586 Huy hiệu bạc629 Huy hiệu Đồng122 gold badges586 silver badges629 bronze badges

Dưới đây là một cách khác sử dụng khả năng hiểu danh sách (một số người có thể thấy nó gây tranh cãi). Nó rất dễ tiếp cận cho các bài kiểm tra đơn giản, ví dụ: So sánh trên các thuộc tính đối tượng (mà tôi cần rất nhiều):

el = [x for x in mylist if x.attr == "foo"][0]

Tất nhiên điều này giả định sự tồn tại (và, thực tế, tính duy nhất) của một yếu tố phù hợp trong danh sách.

Đã trả lời ngày 24 tháng 9 năm 2010 lúc 9:35Sep 24, 2010 at 9:35

ThomashthomashThomasH

21.4K13 Huy hiệu vàng59 Huy hiệu bạc61 Huy hiệu đồng13 gold badges59 silver badges61 bronze badges

3

Giả sử bạn muốn tìm một giá trị trong một mảng numpy, tôi đoán một cái gì đó như thế này có thể hoạt động:

Numpy.where(arr=="value")[0]

Hướng dẫn how do i find an element in an array python? - làm cách nào để tìm một phần tử trong một mảng python?

Jorgesys

121K23 Huy hiệu vàng322 Huy hiệu bạc261 Huy hiệu Đồng23 gold badges322 silver badges261 bronze badges

Đã trả lời ngày 27 tháng 1 năm 2011 lúc 15:03Jan 27, 2011 at 15:03

2

Có phương thức

def __eq__(self, other):
    return self.Value == other.Value
5,
def __eq__(self, other):
    return self.Value == other.Value
6, nhưng tôi không nghĩ rằng bạn có thể chỉ định toán tử so sánh tùy chỉnh. Mặc dù vậy, sẽ không khó để viết chức năng của riêng bạn để làm như vậy:

def custom_index(array, compare_function):
    for i, v in enumerate(array):
        if compare_function(v):
            return i

Đã trả lời ngày 3 tháng 3 năm 2009 lúc 1:50Mar 3, 2009 at 1:50

Hướng dẫn how do i find an element in an array python? - làm cách nào để tìm một phần tử trong một mảng python?

David Zdavid zDavid Z

124K26 Huy hiệu vàng249 Huy hiệu bạc275 Huy hiệu Đồng26 gold badges249 silver badges275 bronze badges

Tôi sử dụng chức năng để trả về chỉ mục cho phần tử phù hợp (Python 2.6):

def index(l, f):
     return next((i for i in xrange(len(l)) if f(l[i])), None)

Sau đó sử dụng nó thông qua hàm Lambda để truy xuất phần tử cần thiết bằng bất kỳ phương trình cần thiết nào, ví dụ: bằng cách sử dụng tên phần tử.

element = mylist[index(mylist, lambda item: item["name"] == "my name")]

Nếu tôi cần sử dụng nó ở một số nơi trong mã của mình, tôi chỉ xác định chức năng tìm cụ thể, ví dụ: Để tìm phần tử theo tên:

def find_name(l, name):
     return l[index(l, lambda item: item["name"] == name)]

Và sau đó nó khá dễ dàng và dễ đọc:

>>> li
['a', 'b', 'new', 'mpilgrim', 'z', 'example', 'new', 'two', 'elements']
>>> 'example' in li
True
>>> 'damn' in li
False
0

Đã trả lời ngày 20 tháng 10 năm 2011 lúc 12:30Oct 20, 2011 at 12:30

Hướng dẫn how do i find an element in an array python? - làm cách nào để tìm một phần tử trong một mảng python?

Jkijkijki

4.5771 Huy hiệu vàng33 Huy hiệu bạc29 Huy hiệu đồng1 gold badge33 silver badges29 bronze badges

Phương pháp chỉ mục của một danh sách sẽ làm điều này cho bạn. Nếu bạn muốn đảm bảo đặt hàng, hãy sắp xếp danh sách trước bằng cách sử dụng

def __eq__(self, other):
    return self.Value == other.Value
7. Sắp xếp chấp nhận một CMP hoặc tham số khóa để chỉ ra cách sắp xếp sẽ xảy ra:

>>> li
['a', 'b', 'new', 'mpilgrim', 'z', 'example', 'new', 'two', 'elements']
>>> 'example' in li
True
>>> 'damn' in li
False
1

Or:

>>> li
['a', 'b', 'new', 'mpilgrim', 'z', 'example', 'new', 'two', 'elements']
>>> 'example' in li
True
>>> 'damn' in li
False
2

Đã trả lời ngày 3 tháng 3 năm 2009 lúc 1:52Mar 3, 2009 at 1:52

Nếu bạn chỉ muốn tìm hiểu xem một phần tử có trong danh sách hay không:Jarret Hardie

Đã trả lời ngày 17 tháng 2 năm 2011 lúc 10:0010 gold badges130 silver badges125 bronze badges

Eduardoeduardo

>>> li
['a', 'b', 'new', 'mpilgrim', 'z', 'example', 'new', 'two', 'elements']
>>> 'example' in li
True
>>> 'damn' in li
False
3

Usage:

>>> li
['a', 'b', 'new', 'mpilgrim', 'z', 'example', 'new', 'two', 'elements']
>>> 'example' in li
True
>>> 'damn' in li
False
4

1.7511 Huy hiệu vàng10 Huy hiệu bạc5 Huy hiệu đồngMar 3, 2009 at 2:06

2

Cách tốt nhất có lẽ là sử dụng phương thức danh sách .index.

>>> li
['a', 'b', 'new', 'mpilgrim', 'z', 'example', 'new', 'two', 'elements']
>>> 'example' in li
True
>>> 'damn' in li
False
5

Đối với các đối tượng trong danh sách, bạn có thể làm một cái gì đó như:

>>> li
['a', 'b', 'new', 'mpilgrim', 'z', 'example', 'new', 'two', 'elements']
>>> 'example' in li
True
>>> 'damn' in li
False
6

với bất kỳ xử lý đặc biệt nào bạn cần.

Bạn cũng có thể sử dụng câu lệnh FOR/IN với Tái lập (ARR)Oct 16, 2011 at 11:41

Làm thế nào để bạn tìm kiếm một phần tử trong một mảng?

Nếu bạn cần chỉ số của phần tử tìm thấy trong mảng, hãy sử dụng FindIndex ().Nếu bạn cần tìm chỉ mục của một giá trị, hãy sử dụng indexof ().use findIndex() . If you need to find the index of a value, use indexOf() .

Làm cách nào để tìm một phần tử trong một mảng mảng?

Sử dụng foreach () để tìm một phần tử trong một mảng mảng.nguyên mẫu.Phương thức foreach () thực thi cùng một mã cho từng phần tử của một mảng.Mã chỉ đơn giản là một tìm kiếm của Index Rudolf (🦌) đang sử dụng indexof. to find an element in an array The Array. prototype. forEach() method executes the same code for each element of an array. The code is simply a search of the index Rudolf (🦌) is in using indexOf.

Làm thế nào để bạn tìm kiếm một phần tử trong một mảng numpy?

Để tìm một phần tử dừng sau trận đấu đầu tiên trong một mảng numpy, hãy sử dụng trình lặp (ndenumerate).Lưu ý rằng cả hai phương thức chỉ mục () và tiếp theo trả về một lỗi nếu phần tử không được tìm thấy.Tiếp theo, người ta có thể sử dụng đối số thứ hai để trả về một giá trị đặc biệt trong trường hợp phần tử không được tìm thấy, ví dụ:use an iterator (ndenumerate). Note that both methods index() and next return an error if the element is not found. With next , one can use a second argument to return a special value in case the element is not found, e.g.