Tìm Python

Python String find() là một hàm có sẵn trong thư viện Python để tìm chỉ mục của lần xuất hiện đầu tiên của một chuỗi con từ chuỗi đã cho. Hàm find() chuỗi sẽ trả về -1 thay vì đưa ra một ngoại lệ, nếu chuỗi con đã chỉ định không có trong chuỗi đã cho

Trong hướng dẫn phương thức find() chuỗi Python này, bạn sẽ học

Cú pháp tìm chuỗi Python()

Cú pháp cơ bản của hàm find() trong Python như sau

string.find(substring,start,end)

Tham số cho phương thức find()

Đây là 3 tham số của hàm String find() trong Python

  • chuỗi con. Chuỗi con bạn muốn tìm kiếm trong chuỗi đã cho
  • bắt đầu. (tùy chọn) Giá trị bắt đầu từ nơi bắt đầu tìm kiếm chuỗi con. Theo mặc định, nó là 0
  • kết thúc. (tùy chọn) Giá trị kết thúc nơi quá trình tìm kiếm chuỗi con sẽ kết thúc. Theo mặc định, giá trị là độ dài của chuỗi

Ví dụ về phương thức find() với các giá trị mặc định

Các tham số được truyền cho phương thức find() của Python là chuỗi con i. e chuỗi bạn muốn tìm kiếm, bắt đầu và kết thúc. Giá trị bắt đầu là 0 theo mặc định và giá trị kết thúc là độ dài của chuỗi

Trong ví dụ này, chúng ta sẽ sử dụng phương thức find() trong Python với các giá trị mặc định

Phương thức find() sẽ tìm kiếm chuỗi con và đưa ra vị trí xuất hiện đầu tiên của chuỗi con. Bây giờ, nếu chuỗi con xuất hiện nhiều lần trong chuỗi đã cho, nó vẫn sẽ trả về cho bạn chỉ mục hoặc vị trí của chuỗi đầu tiên

Thí dụ

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials"))

đầu ra

The position of Tutorials is at: 12

Ví dụ về find() sử dụng đối số bắt đầu

Bạn có thể tìm kiếm chuỗi con trong chuỗi đã cho và chỉ định vị trí bắt đầu, từ đó quá trình tìm kiếm sẽ bắt đầu. Tham số bắt đầu có thể được sử dụng cho cùng một

Ví dụ sẽ chỉ định vị trí bắt đầu là 15 và phương thức find() trong Python sẽ bắt đầu tìm kiếm từ vị trí 15. Ở đây, vị trí kết thúc sẽ là độ dài của chuỗi và sẽ tìm đến cuối chuỗi từ 15 vị trí trở đi

Thí dụ

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials", 20))

đầu ra

The position of Tutorials is at 48

Ví dụ về find() sử dụng đối số bắt đầu và kết thúc

Sử dụng tham số bắt đầu và kết thúc, chúng tôi sẽ cố gắng giới hạn tìm kiếm, thay vì tìm kiếm toàn bộ chuỗi

Thí dụ

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials", 5, 30))

đầu ra

The position of Tutorials is at 12

Ví dụ về phương thức find() Để tìm vị trí của một chuỗi con đã cho trong một chuỗi

Chúng tôi biết rằng find() giúp chúng tôi tìm chỉ mục xuất hiện đầu tiên của chuỗi con. Nó trả về -1 nếu chuỗi con không có trong chuỗi đã cho. Ví dụ bên dưới hiển thị chỉ mục khi có chuỗi và -1 khi chúng tôi không tìm thấy chuỗi con mà chúng tôi đang tìm kiếm

Thí dụ

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"
print("The position of Best site is at:", mystring.find("Best site", 5, 40))
print("The position of Guru99 is at:", mystring.find("Guru99", 20))

đầu ra

________số 8

Chuỗi Python rfind()

Hàm rfind() trong Python tương tự như hàm find() với sự khác biệt duy nhất là rfind() cho chỉ số cao nhất cho chuỗi con đã cho và find() cho giá trị i thấp nhất. e chỉ mục đầu tiên. Cả rfind() và find() sẽ trả về -1 nếu không có chuỗi con

Trong ví dụ bên dưới, chúng ta có một chuỗi “Meet Guru99 Tutorials Site. Trang web tốt nhất cho Hướng dẫn Python. ” và sẽ cố gắng tìm vị trí của chuỗi con Hướng dẫn sử dụng find() và rfind(). Sự xuất hiện của Hướng dẫn trong chuỗi là hai lần

Đây là một ví dụ sử dụng cả find() và rfind()

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"
print("The position of Tutorials using find() : ", mystring.find("Tutorials"))
print("The position of Tutorials using rfind() : ", mystring.rfind("Tutorials"))

đầu ra

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials"))
0

Kết quả cho thấy find() đưa ra chỉ mục của chuỗi con Tutorials đầu tiên mà nó nhận được và rfind() đưa ra chỉ mục cuối cùng của chuỗi con Tutorials

Chỉ mục chuỗi Python()

Chuỗi Python index() là hàm sẽ cung cấp cho bạn vị trí của chuỗi con được cung cấp giống như find(). Sự khác biệt duy nhất giữa hai loại này là, index() sẽ đưa ra một ngoại lệ nếu chuỗi con không có trong chuỗi và find() sẽ trả về -1

Đây là một ví dụ hoạt động cho thấy hành vi của index() và find()

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials"))
1

đầu ra

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials"))
2

Chúng tôi đang nhận được cùng một vị trí cho cả find() và index(). Chúng ta hãy xem một ví dụ khi chuỗi con đã cho không có trong chuỗi

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials"))
3

đầu ra

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials"))
4

Trong ví dụ trên, chúng tôi đang cố gắng tìm vị trí của chuỗi con “test”. Chuỗi con không có trong chuỗi đã cho và do đó sử dụng find(), chúng tôi nhận được vị trí là -1, nhưng đối với index(), nó sẽ báo lỗi như hình trên

Để tìm tổng số lần xuất hiện của một chuỗi con

Để tìm tổng số lần chuỗi con đã xuất hiện trong chuỗi đã cho, chúng ta sẽ sử dụng hàm find() trong Python. Sẽ lặp qua chuỗi bằng vòng lặp for từ 0 đến cuối chuỗi. Sẽ sử dụng tham số startIndex cho find()

Các biến startIndex và count sẽ được khởi tạo thành 0. Bên trong for –loop sẽ kiểm tra xem chuỗi con có tồn tại bên trong chuỗi đã cho hay không bằng cách sử dụng find() và startIndex là 0

Giá trị được trả về từ find() nếu không phải -1, sẽ cập nhật start Index thành chỉ mục nơi chuỗi được tìm thấy và cũng tăng giá trị đếm

Tìm() trong Python là gì?

Phương thức find() tìm lần xuất hiện đầu tiên của giá trị đã chỉ định . Phương thức find() trả về -1 nếu không tìm thấy giá trị. Phương thức find() gần giống như phương thức index(), điểm khác biệt duy nhất là phương thức index() đưa ra một ngoại lệ nếu không tìm thấy giá trị. (Xem ví dụ bên dưới)

Đâu là sự khác biệt giữa index() và find() ?

Cả index() và find() đều giống nhau ở chỗ chúng trả về vị trí chỉ mục của lần xuất hiện đầu tiên của chuỗi con từ chuỗi chính. Sự khác biệt chính là Python find() tạo ra -1 làm đầu ra nếu nó không thể tìm thấy chuỗi con, trong khi index() đưa ra một ngoại lệ ValueError .

Tôi có thể sử dụng cái gì thay vì tìm trong Python?

Sử dụng Toán tử “in” thay vì find() của Python . Từ khóa boolean True biểu thị rằng chuỗi con được tìm kiếm đã được tìm thấy trong chuỗi khác trong khi Sai có nghĩa là ngược lại.

Làm cách nào để sử dụng tìm kiếm trong Python?

Khoa học dữ liệu thực tế sử dụng Python . lại. tìm kiếm (mẫu, chuỗi). Nó tương tự như lại. match() nhưng nó không giới hạn chúng tôi chỉ tìm các kết quả khớp ở đầu chuỗi