Python Phương thức chuỗi find() có ví dụ
Là gì Python Tìm chuỗi()?
Python Tìm chuỗi() là một chức năng có sẵn trong Python thư viện để tìm chỉ mục của lần xuất hiện đầu tiên của chuỗi con từ chuỗi đã cho. Hàm find() của chuỗi sẽ trả về -1 thay vì đưa ra ngoại lệ nếu chuỗi con đã chỉ định không có trong chuỗi đã cho.
Cú pháp của Python tìm chuỗi()
Cú pháp cơ bản của Python Hàm find() như sau:
string.find(substring,start,end)
Các tham số cho phương thức find()
Đây là ba 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.
- cuối: (tùy chọn) Giá trị cuối nơi việc 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 giá trị mặc định
Các tham số truyền vào Python Phương thức find() là chuỗi con tức là 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ị cuối 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.
Ví 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ừ đó tìm kiếm sẽ bắt đầu. Tham số bắt đầu có thể được sử dụng cho mục đích tương tự.
Ví dụ sẽ chỉ định vị trí bắt đầu là 15 và find() trong Python phương thức sẽ bắt đầu tìm kiếm từ vị trí 15. Ở đây, vị trí cuối cùng sẽ là độ dài của chuỗi và sẽ tìm kiếm cho đến hết chuỗi từ 15 vị trí trở đi.
Ví 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ố start và end, chúng ta sẽ thử giới hạn tìm kiếm thay vì tìm kiếm toàn bộ chuỗi.
Ví 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 chuỗi
Chúng ta biết rằng find() giúp chúng ta tìm chỉ mục của lần 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 chuỗi có và -1 khi chúng ta không tìm thấy chuỗi con mà chúng ta đang tìm kiếm.
Ví 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:
The position of Best site is at: 27 The position of Guru99 is at: -1
Python chuỗi rfind()
Sản phẩm Python hàm rfind() tương tự như hàm find() với điểm khác biệt duy nhất là rfind() cho chỉ số cao nhất cho chuỗi con đã cho và find() cho chỉ số thấp nhất, tức là 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 “Trang hướng dẫn Meet Guru99. Trang web tốt nhất cho Python Khóa hướng dẫn!” 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ụ trong đó cả find() và rfind() đều được sử dụng.
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:
The position of Tutorials using find() : 12 The position of Tutorials using rfind() : 48
Kết quả đầu ra cho thấy find() cung cấp chỉ mục của chuỗi con Hướng dẫn đầu tiên mà nó nhận được và rfind() cung cấp chỉ mục cuối cùng của chuỗi con Hướng dẫn.
Python chỉ số chuỗi()
Sản phẩm Python string 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 thể hiện hành vi của chỉ mục() và find().
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 index() : ", mystring.index("Tutorials"))
Đầu ra:
The position of Tutorials using find() : 12 The position of Tutorials using index() : 12
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 using find() : ", mystring.find("test")) print("The position of Tutorials using index() : ", mystring.index("test"))
Đầu ra:
The position of Tutorials using find() : -1 Traceback (most recent call last): File "task1.py", line 3, in <module> print("The position of Tutorials using index() : ", mystring.index("test")) ValueError: substring not found
Trong ví dụ trên, chúng ta đ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 đó khi sử dụng find(), chúng ta nhận được vị trí là -1, nhưng đối với chỉ mục(), nó sẽ đưa ra lỗi như hiển thị ở 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 cho đến hết chuỗi. Sẽ sử dụng tham số startIndex cho find().
Các biến startIndex và count sẽ được khởi tạo bằng 0. Bên trong –loop sẽ kiểm tra xem chuỗi con có xuất hiện 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 startIndex thành chỉ mục nơi tìm thấy chuỗi và cũng tăng giá trị đếm.
Đây là ví dụ hoạt động:
my_string = "test string test, test string testing, test string test string" startIndex = 0 count = 0 for i in range(len(my_string)): k = my_string.find('test', startIndex) if(k != -1): startIndex = k+1 count += 1 k = 0 print("The total count of substring test is: ", count )
Đầu ra:
The total count of substring test is: 6
Tổng kết
- Sản phẩm Python Phương thức string find() giúp tìm chỉ mục xuất hiện đầu tiên của chuỗi con trong chuỗi đã cho. Nó sẽ trả về -1 nếu không có chuỗi con.
- Các tham số truyền vào Python phương thức tìm chuỗi con là chuỗi con tức là 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ị cuối là độ dài của chuỗi.
- Bạn có thể tìm kiếm chuỗi con trong chuỗi đã cho và chỉ định vị trí bắt đầu, từ đó tìm kiếm sẽ bắt đầu. Tham số bắt đầu có thể được sử dụng cho mục đích tương tự.
- Sử dụng tham số start và end, chúng ta sẽ thử giới hạn tìm kiếm thay vì tìm kiếm toàn bộ chuỗi.
- Sản phẩm Python chức năng rfind() tương tự như hàm find() với điểm khác biệt duy nhất là rfind() cho chỉ số cao nhất cho chuỗi con đã cho và find() cho chỉ số thấp nhất, tức là chỉ mục đầu tiên. Cả rfind() và find() sẽ trả về -1 nếu không có chuỗi con.
- Sản phẩm Python string index() là một hàm khác sẽ cung cấp cho bạn vị trí của chuỗi con đã cho 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.
- Chúng ta có thể sử dụng find() để tìm tổng số lần xuất hiện của một chuỗi con trong một chuỗi nhất định.
" Học nhiều hơn về Python Tách chuỗi()