Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Trả về chỉ mục thấp nhất tìm thấy substring trong khoảng cho trước dùng find() trong Python

numpy.char.find() tương tự index() nhưng trả về -1 thay vì ném exception khi không tìm thấy substring. Hỗ trợ start và end để giới hạn phạm vi.

Tham số

  • arr (array_like): Mảng chuỗi đầu vào.
  • sub (str): Substring cần tìm.
  • start, end (int, tùy chọn): Phạm vi tìm kiếm (slice notation).

Các bước thực hiện

Nhập NumPy, tạo mảng chuỗi:

import numpy as np

arr = np.array(['KATIE', 'JOHN', 'CRATE', 'AmY', 'BRADley'])
print("Mảng...\n", arr)
print("\nKiểu dữ liệu...\n", arr.dtype)
print("\nSố chiều...\n", arr.ndim)
print("\nHình dạng...\n", arr.shape)
print("\nSố phần tử...\n", arr.size)

# Tìm 'AT' từ index 1 đến 3 (không bao gồm 3)
print("\nKết quả (find)...\n", np.char.find(arr, 'AT', start=1, end=3))

Ví dụ hoàn chỉnh

import numpy as np

arr = np.array(['KATIE', 'JOHN', 'CRATE', 'AmY', 'BRADley'])
print("Mảng...\n", arr)
print("\nKiểu dữ liệu...\n", arr.dtype)
print("\nSố chiều...\n", arr.ndim)
print("\nHình dạng...\n", arr.shape)
print("\nSố phần tử...\n", arr.size)
print("\nKết quả (find)...\n", np.char.find(arr, 'AT', start=1, end=3))

Kết quả đầu ra

Mảng...
 ['KATIE' 'JOHN' 'CRATE' 'AmY' 'BRADley']
Kiểu dữ liệu...
 

Giải thích: Chỉ 'KATIE'[1:3]='AT' khớp -> index 1. Các chuỗi khác không có 'AT' trong phạm vi [1:3] -> -1.