Hướng dẫn python search function list - danh sách chức năng tìm kiếm python
Hàm find() trong Python xác định xem chuỗi str có xuất hiện trong chuỗi string hoặc chuỗi con đã cho của string (nếu bạn cung cấp chỉ mục bắt đầu beg và chỉ mục kết thúc end), nếu xuất hiện thì trả về chỉ mục của str, còn không thì trả về -1 xác định xem chuỗi str có xuất hiện trong chuỗi string hoặc chuỗi con đã cho của string (nếu bạn cung cấp chỉ mục bắt đầu beg và chỉ mục kết thúc end), nếu xuất hiện thì trả về chỉ mục của str, còn không thì trả về -1 Nội dung chính ShowShow Nội dung chính
Nội dung chínhstr.find(str, beg=0 end=len(string)) Cú pháp
str1 = "Vi du \t ham find() trong Python"; str2 = "find"; print (str1.find(str2)) print (str1.find(str2, 10)) print (str1.find(str2, 20)) end: Xác định chỉ mục kết thúc, mặc định là bằng độ dài chuỗi. Kết quả là:tìm ký tự trong chuỗi python. Bạn sẽ học được cách tìm ký tự trong chuỗi python bằng các phương thức có sẵn như find, rfind, index, rindex trong bài viết này. Bạn cũng sẽ học được cách tìm vị trí xuất hiện thứ n của một ký tự trong chuỗi cho trước bằng for i in range trong python sau bài học này. Hướng dẫn tìm ký tự trong chuỗi python. Bạn sẽ học được cách tìm ký tự trong chuỗi python bằng các phương thức có sẵn như find, rfind, index, rindex trong bài viết này. Bạn cũng sẽ học được cách tìm vị trí xuất hiện thứ n của một ký tự trong chuỗi cho trước bằng for i in range trong python sau bài học này. Tìm ký tự trong chuỗi python bằng phương thức findPython đã tích hợp sẵn một số phương thức giúp bạn tìm vị trí ký tự trong chuỗi như sau:phương thức find trong python để tìm vị trí ký tự xuất hiện đầu tiên trong chuỗi python với cú pháp sau đây: Phương thức find cú pháp rút gọnprint("dictionary".find("io"))1. print("dictionary".find("io"))2( print("dictionary".find("io"))3) Chúng ta sử dụng phương thức find trong python để tìm vị trí ký tự xuất hiện đầu tiên trong chuỗi python với cú pháp sau đây:sub là chuỗi ký tự cần tìm trong chuỗi str Trong đó sub là chuỗi ký tự cần tìm trong chuỗi strphương thức find trong python sẽ trả về kết quả -1 kết quả trả về sẽ là index của vị trí ký tự sub xuất hiện đầu tiên trong chuỗi str. Và nếu như sub không tồn tại trong str, phương thức find trong python sẽ trả về kết quả -1 ※Về index trong chuỗi python, bạn có thể tham khảo tại bài viết Lấy ký tự trong chuỗi pythonphương thức find trong python thực tiễn giống như ví dụ sau: print("dictionary".find("io")) Cách sử dụng phương thức find trong python thực tiễn giống như ví dụ sau:phương thức find trong python sẽ trả về kết quả là print("dictionary".find("io"))6. dictionary ---------- ở ví dụ đầu tiên, chuỗi print("dictionary".find("io"))4 xuất hiện đầu tiên trong chuỗi print("dictionary".find("io"))5 tại vị trí có index là 4, do đó phương thức find trong python sẽ trả về kết quả là print("dictionary".find("io"))6.phương thức find trong python sẽ chỉ trả về index tại vị trí chuỗi print("dictionary".find("io"))7 xuất hiện đầu tiên mà thôi. Good School ----------- 10 ở ví dụ thứ hai, chuỗi print("dictionary".find("io"))7 xuất hiện hai lần trong chuỗi print("dictionary".find("io"))8, tuy nhiên phương thức find trong python sẽ chỉ trả về index tại vị trí chuỗi print("dictionary".find("io"))7 xuất hiện đầu tiên mà thôi.phương thức find trong python sẽ chỉ trả về index tại vị trí chuỗi print("dictionary".find("io"))7 xuất hiện đầu tiên mà thôi. Goooood ------- 0123456 ở ví dụ thứ ba, chuỗi print("dictionary".find("io"))7 xuất hiện liên tục 4 lần trong chuỗi dictionary ----------1, tuy nhiên phương thức find trong python sẽ chỉ trả về index tại vị trí chuỗi print("dictionary".find("io"))7 xuất hiện đầu tiên mà thôi. Phương thức find cú pháp tổng quátở ví dụ thứ tư, chuỗi dictionary ----------3 do không trong chuỗi dictionary ----------4, do đó kết quả trả về sẽ là dictionary ----------5 print("dictionary".find("io"))1.find( print("dictionary".find("io"))3, dictionary ----------8, dictionary ----------9)phương thức find trong python. Bằng cách chỉ định hai đối số này, chúng ta có thể quyết định phạm vi tìm kiếm ký tự sub trong chuỗi str. Chúng ta cần chỉ định thêm start và end trong cú pháp tổng quát của phương thức find trong python. Bằng cách chỉ định hai đối số này, chúng ta có thể quyết định phạm vi tìm kiếm ký tự sub trong chuỗi str.phương thức find trong python sẽ trả về kết quả -1 kết quả trả về sẽ là index của vị trí ký tự sub xuất hiện đầu tiên tại phạm vi từ start tới end trong chuỗi str. Và nếu như sub không tồn tại trong phạm vi này, phương thức find trong python sẽ trả về kết quả -1phương thức find trong python với cú pháp tổng quát thực tiễn giống như ví dụ sau:
Cách sử dụng phương thức find trong python với cú pháp tổng quát thực tiễn giống như ví dụ sau: d School ----------- 345678910 ở ví dụ thứ hai, với việc chỉ định start = 3 và end = 10, chúng ta tiến hành tìm kiếm ký tự print("dictionary".find("io"))7 trong phạm vi index từ Good School ----------- 101 đến Good School ----------- 102 trong chuỗi print("dictionary".find("io"))8. Và vị trí xuất hiện đầu tiên của print("dictionary".find("io"))7 trong phạm vi này là Good School ----------- 105, do đó kết quả trả về là Good School ----------- 105. Tìm ký tự trong chuỗi python bằng phương thức rfindPhương thức rfind cú pháp rút gọnphương thức rfind trong python để tìm vị trí ký tự xuất hiện cuối cùng trong chuỗi python với cú pháp sau đây: Phương thức rfind cú pháp rút gọnprint("dictionary".find("io"))1.rfind( print("dictionary".find("io"))3) Trong đó sub là chuỗi ký tự cần tìm trong chuỗi strsub là chuỗi ký tự cần tìm trong chuỗi str kết quả trả về sẽ là index của vị trí ký tự sub xuất hiện cuối cùng trong chuỗi str. Và nếu như sub không tồn tại trong str, phương thức rfind sẽ trả về kết quả -1phương thức rfind sẽ trả về kết quả -1 ※Về index trong chuỗi python, bạn có thể tham khảo tại bài viết Lấy ký tự trong chuỗi python Cách sử dụng phương thức rfind trong python thực tiễn giống như ví dụ sau:phương thức rfind trong python thực tiễn giống như ví dụ sau: print("dictionary".rfind("io")) ở ví dụ đầu tiên, chuỗi print("dictionary".find("io"))4 xuất hiện cuối cùng trong chuỗi print("dictionary".find("io"))5 tại vị trí có index là 4, do đó phương thức rfind sẽ trả về kết quả là print("dictionary".find("io"))6.phương thức rfind sẽ trả về kết quả là print("dictionary".find("io"))6. dictionary ---------- ở ví dụ thứ hai, chuỗi print("dictionary".find("io"))7 xuất hiện hai lần trong chuỗi print("dictionary".find("io"))8, tuy nhiên phương thức rfind sẽ chỉ trả về index tại vị trí chuỗi print("dictionary".find("io"))7 xuất hiện cuối cùng mà thôi.phương thức rfind sẽ chỉ trả về index tại vị trí chuỗi print("dictionary".find("io"))7 xuất hiện cuối cùng mà thôi. Good School ----------- 10 ở ví dụ thứ ba, chuỗi print("dictionary".find("io"))7 xuất hiện liên tục 4 lần trong chuỗi dictionary ----------1, tuy nhiên phương thức find sẽ chỉ trả về index tại vị trí chuỗi print("dictionary".find("io"))7 xuất hiện cuối cùng mà thôi.phương thức find sẽ chỉ trả về index tại vị trí chuỗi print("dictionary".find("io"))7 xuất hiện cuối cùng mà thôi. Goooood ------- 0123456 ở ví dụ thứ tư, chuỗi dictionary ----------3 do không trong chuỗi dictionary ----------4, do đó kết quả trả về sẽ là dictionary ----------5 Phương thức rfind cú pháp tổng quátprint("dictionary".find("io"))1.rfind( print("dictionary".find("io"))3, dictionary ----------8, dictionary ----------9) Chúng ta cần chỉ định thêm start và end trong cú pháp tổng quát của phương thức rfind. Bằng cách chỉ định hai đối số này, chúng ta có thể quyết định phạm vi tìm kiếm ký tự sub trong chuỗi str.phương thức rfind. Bằng cách chỉ định hai đối số này, chúng ta có thể quyết định phạm vi tìm kiếm ký tự sub trong chuỗi str. kết quả trả về sẽ là index của vị trí ký tự sub xuất hiện cuối cùng tại phạm vi từ start tới end trong chuỗi str. Và nếu như sub không tồn tại trong phạm vi này, phương thức rfind sẽ trả về kết quả -1phương thức rfind sẽ trả về kết quả -1 Cách sử dụng phương thức rfind với cú pháp tổng quát thực tiễn giống như ví dụ sau:phương thức rfind với cú pháp tổng quát thực tiễn giống như ví dụ sau: str1 = "Vi du \t ham find() trong Python"; str2 = "find"; print (str1.find(str2)) print (str1.find(str2, 10)) print (str1.find(str2, 20))2 ở ví dụ thứ hai, với việc chỉ định start = 0 và end = 6, chúng ta tiến hành tìm kiếm ký tự print("dictionary".find("io"))7 trong phạm vi index từ 7 đến 8 trong chuỗi print("dictionary".find("io"))8. Và vị trí xuất hiện cuối cùng của print("dictionary".find("io"))7 trong phạm vi này là d School ----------- 3456789101, do đó kết quả trả về là Good School ----------- 105. str1 = "Vi du \t ham find() trong Python"; str2 = "find"; print (str1.find(str2)) print (str1.find(str2, 10)) print (str1.find(str2, 20))3 ở ví dụ thứ 3, với việc bỏ đi giá trị dictionary ----------9, python sẽ mặc định tìm kiếm tới vị trí ký tự cuối cùng trong chuỗi. Tìm ký tự trong chuỗi python bằng phương thức indexMục đích sử dụng phương thức index trong python cũng giống với phương thức find, đó là tìm vị trí ký tự xuất hiện đầu tiên trong chuỗi python. Tuy nhiên nếu như ký tự đó không tồn tại trong chuỗi, thì khác với phương thức find đưa ra kết quả dictionary ----------5 thì phương thức index sẽ trả về lỗi d School ----------- 3456789105.phương thức index trong python cũng giống với phương thức find, đó là tìm vị trí ký tự xuất hiện đầu tiên trong chuỗi python. Tuy nhiên nếu như ký tự đó không tồn tại trong chuỗi, thì khác với phương thức find đưa ra kết quả dictionary ----------5 thì phương thức index sẽ trả về lỗi d School ----------- 3456789105. Chúng ta sử dụng phương thức index trong python để tìm vị trí ký tự xuất hiện đầu tiên trong chuỗi python với cú pháp cũng tương tự như với phương thức find:phương thức index trong python để tìm vị trí ký tự xuất hiện đầu tiên trong chuỗi python với cú pháp cũng tương tự như với phương thức find: print("dictionary".find("io"))1.index( print("dictionary".find("io"))3) print("dictionary".find("io"))1.index( print("dictionary".find("io"))3, dictionary ----------8, dictionary ----------9) print("dictionary".find("io"))1.index( print("dictionary".find("io"))3, dictionary ----------8, dictionary ----------9) Bạn có thể sử dụng cú pháp rút gọn để tìm index của vị trí xuất hiện đầu tiên của sub trong toàn bộ chuỗi str, hoặc chỉ định start và end để quyết định phạm vi tìm kiếm ký tự sub trong chuỗi str. Cách sử dụng phương thức index thực tiễn giống như ví dụ sau:phương thức index thực tiễn giống như ví dụ sau: str1 = "Vi du \t ham find() trong Python"; str2 = "find"; print (str1.find(str2)) print (str1.find(str2, 10)) print (str1.find(str2, 20))4 Và khi ký tự sub không tồn tại trong chuỗi str, lỗi trả về như sau: str1 = "Vi du \t ham find() trong Python"; str2 = "find"; print (str1.find(str2)) print (str1.find(str2, 10)) print (str1.find(str2, 20))5 Lỗi ValueError trả về: str1 = "Vi du \t ham find() trong Python"; str2 = "find"; print (str1.find(str2)) print (str1.find(str2, 10)) print (str1.find(str2, 20))6 Bạn có thể thấy căn bản cách sử dụng phương thức index giống hệt với phương thức find, tuy nhiên cần chú ý là đối với phương thức index , nếu ký tự cần tìm không tồn tại trong chuỗi thì lỗi sẽ xảy ra khiến cho chương trình bị dừng lại. Do đó bạn cần phải dùng kết hợp với print("dictionary".rfind("io"))2 để bỏ qua lỗi và tiếp tục chạy chương trình python.phương thức index giống hệt với phương thức find, tuy nhiên cần chú ý là đối với phương thức index , nếu ký tự cần tìm không tồn tại trong chuỗi thì lỗi sẽ xảy ra khiến cho chương trình bị dừng lại. Do đó bạn cần phải dùng kết hợp với print("dictionary".rfind("io"))2 để bỏ qua lỗi và tiếp tục chạy chương trình python. Tìm ký tự trong chuỗi python bằng phương thức rindexMục đích sử dụng phương thức rindex trong python cũng giống với phương thức find, đó là tìm vị trí ký tự xuất hiện cuối cùng trong chuỗi python. Tuy nhiên nếu như ký tự đó không tồn tại trong chuỗi, thì khác với phương thức rfind đưa ra kết quả dictionary ----------5 thì phương thức rindex sẽ trả về lỗi d School ----------- 3456789105.phương thức rindex trong python cũng giống với phương thức find, đó là tìm vị trí ký tự xuất hiện cuối cùng trong chuỗi python. Tuy nhiên nếu như ký tự đó không tồn tại trong chuỗi, thì khác với phương thức rfind đưa ra kết quả dictionary ----------5 thì phương thức rindex sẽ trả về lỗi d School ----------- 3456789105. Chúng ta sử dụng phương thức rindex trong python để tìm vị trí ký tự xuất hiện cuối cùng trong chuỗi python với cú pháp cũng tương tự như với phương thức rfind:phương thức rindex trong python để tìm vị trí ký tự xuất hiện cuối cùng trong chuỗi python với cú pháp cũng tương tự như với phương thức rfind: print("dictionary".find("io"))1.rindex( print("dictionary".find("io"))3) print("dictionary".find("io"))1.rindex( print("dictionary".find("io"))3, dictionary ----------8, dictionary ----------9) print("dictionary".find("io"))1.rindex( print("dictionary".find("io"))3, dictionary ----------8, dictionary ----------9) Bạn có thể sử dụng cú pháp rút gọn để tìm index của vị trí xuất hiện cuối cùng của sub trong toàn bộ chuỗi str, hoặc chỉ định start và end để quyết định phạm vi tìm kiếm ký tự sub trong chuỗi str. Cách sử dụng phương thức rindex thực tiễn giống như ví dụ sau:phương thức rindex thực tiễn giống như ví dụ sau: str1 = "Vi du \t ham find() trong Python"; str2 = "find"; print (str1.find(str2)) print (str1.find(str2, 10)) print (str1.find(str2, 20))7 Và khi ký tự sub không tồn tại trong chuỗi str, lỗi trả về như sau: str1 = "Vi du \t ham find() trong Python"; str2 = "find"; print (str1.find(str2)) print (str1.find(str2, 10)) print (str1.find(str2, 20))8 Lỗi ValueError trả về: str1 = "Vi du \t ham find() trong Python"; str2 = "find"; print (str1.find(str2)) print (str1.find(str2, 10)) print (str1.find(str2, 20))9 Bạn có thể thấy căn bản cách sử dụng phương thức rindex giống hệt với phương thức rfind, tuy nhiên cần chú ý là đối với phương thức rindex , nếu ký tự cần tìm không tồn tại trong chuỗi thì lỗi sẽ xảy ra khiến cho chương trình bị dừng lại. Do đó bạn cần phải dùng kết hợp với print("dictionary".rfind("io"))2 để bỏ qua lỗi và tiếp tục chạy chương trình python.phương thức rindex giống hệt với phương thức rfind, tuy nhiên cần chú ý là đối với phương thức rindex , nếu ký tự cần tìm không tồn tại trong chuỗi thì lỗi sẽ xảy ra khiến cho chương trình bị dừng lại. Do đó bạn cần phải dùng kết hợp với print("dictionary".rfind("io"))2 để bỏ qua lỗi và tiếp tục chạy chương trình python. Tìm vị trí xuất hiện thứ n của một ký tự trong chuỗi cho trướcĐể tìm vị trí xuất hiện thứ n của một ký tự trong chuỗi cho trước, ví dụ như tìm vị trí xuất hiện thứ 3 của ký tự “o” trong chuỗi “Good School”, chúng ta có thể dùng for i in range trong python với mã lệnh như sau: print("dictionary".find("io"))0
Trên đây là cách đơn giản và trực quan nhất mà Kiyoshi muốn giới thiệu cho bạn. Ngoài cách này ra thì còn rất nhiều cách khác đang chờ bạn khám phá đấy. Tổng kết và thực hànhTrên đây Kiyoshi đã hướng dẫn bạn cách tìm ký tự trong chuỗi python bằng các phương thức có sẵn như find, rfind, index, rindex, cũng như cách tìm vị trí xuất hiện thứ n của một ký tự trong chuỗi cho trước bằng for i in range trong python rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay nhé.tìm ký tự trong chuỗi python bằng các phương thức có sẵn như find, rfind, index, rindex, cũng như cách tìm vị trí xuất hiện thứ n của một ký tự trong chuỗi cho trước bằng for i in range trong python rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay nhé. Và hãy cùng tìm hiểu những kiến thức sâu hơn về python trong các bài học tiếp theo. Hãy chia sẻ và cùng lan tỏa kiến thức lập trình Nhật Bản tại Việt Nam! HOME>> python cơ bản - lập trình python cho người mới bắt đầu>>09. chuỗi trong python>> python cơ bản - lập trình python cho người mới bắt đầu>>09. chuỗi trong python Bài sauKiểm tra chuỗi có phải là chữ hay không trong python Bài tiếpLấy ký tự trong chuỗi python |