Làm thế nào để bạn tìm thấy chỉ mục của lần xuất hiện cuối cùng trong python?

Đưa ra một chuỗi và một chuỗi con trong Python. Làm cách nào để tìm chỉ mục của lần xuất hiện cuối cùng của chuỗi con trong Python?

Hãy xem xét một vài ví dụ để hiểu thấu đáo vấn đề

Example 1:
string = 'fifi'
substring = 'fi'
result: 2

Example 2:
string = 'hello'
substring = 'l'
result: 3

Example 3:
string = 'finxter finxter finxter'
substring = 'finxter'
result: 16

Tiếp theo, hãy đi sâu vào phương pháp Pythonic đầu tiên và hầu hết

Phương pháp 1. rfind[]

Phương thức Python

string = 'fifi'
substring = 'fi'
print[string.rfind[substring]]
# 2
9 trả về chỉ số cao nhất trong chuỗi nơi tìm thấy chuỗi con. Do đó, nó tìm thấy chỉ mục của lần xuất hiện cuối cùng của chuỗi con trong một chuỗi đã cho hoặc trả về
string = 'hello'
substring = 'l'
print[string.rfind[substring]]
# 3


string = 'finxter finxter finxter'
substring = 'finxter'
print[string.rfind[substring]]
# 16
0 nếu không tìm thấy

Đây là một ví dụ

string = 'fifi'
substring = 'fi'
print[string.rfind[substring]]
# 2

Để dễ hiểu, chúng ta hãy đi sâu vào hai ví dụ khác được giới thiệu trong phần xây dựng bài toán

string = 'hello'
substring = 'l'
print[string.rfind[substring]]
# 3


string = 'finxter finxter finxter'
substring = 'finxter'
print[string.rfind[substring]]
# 16

Bạn có thể tìm thấy một số thông tin cơ bản về

string = 'hello'
substring = 'l'
print[string.rfind[substring]]
# 3


string = 'finxter finxter finxter'
substring = 'finxter'
print[string.rfind[substring]]
# 16
1 và nhiều phương thức chuỗi khác trong video sau—chinh phục các phương thức chuỗi một lần và mãi mãi. 🙂

Phương thức chuỗi Python [Hướng dẫn cơ bản]


Xem video này trên YouTube

Phương pháp 2. chuỗi. rindex[]

Phương thức

string = 'hello'
substring = 'l'
print[string.rfind[substring]]
# 3


string = 'finxter finxter finxter'
substring = 'finxter'
print[string.rfind[substring]]
# 16
2 của Python trả về chỉ số cao nhất trong chuỗi nơi tìm thấy chuỗi con. Do đó, nó tìm thấy chỉ mục của lần xuất hiện cuối cùng của chuỗi con trong một chuỗi đã cho hoặc tăng 10 nếu không tìm thấy

Hãy có một ví dụ tương tự

string = 'fifi'
substring = 'fi'
print[string.rindex[substring]]
# 2


string = 'hello'
substring = 'l'
print[string.rindex[substring]]
# 3


string = 'finxter finxter finxter'
substring = 'finxter'
print[string.rindex[substring]]
# 16

Sự khác biệt giữa

string = 'hello'
substring = 'l'
print[string.rfind[substring]]
# 3


string = 'finxter finxter finxter'
substring = 'finxter'
print[string.rfind[substring]]
# 16
1 và
string = 'fifi'
substring = 'fi'
print[string.rfind[substring]]
# 2
2 là trong khi cả hai đều trả về chỉ số của lần xuất hiện cuối cùng của chuỗi con, thì cái trước trả về
string = 'hello'
substring = 'l'
print[string.rfind[substring]]
# 3


string = 'finxter finxter finxter'
substring = 'finxter'
print[string.rfind[substring]]
# 16
0 và cái sau trả về
string = 'fifi'
substring = 'fi'
print[string.rfind[substring]]
# 2
0 nếu chuỗi con không tồn tại trong chuỗi

Phương pháp 3. Tìm kiếm Regex Tìm kiếm tiêu cực

Để giải trí, đây là một biểu thức chính quy tìm chỉ mục của lần xuất hiện cuối cùng của một chuỗi con trong một chuỗi đã cho

re.search[substring + '[?!.*' + substring + ']', string].start[]

Trước khi tôi giải thích cho bạn, hãy xem liệu nó có thực sự làm những gì nó phải làm hay không. 🙂

________số 8

Được rồi, nó hoạt động - nhưng tại sao?

Bạn cần hiểu một vài khái niệm biểu thức chính quy cho điều này

  • Phương thức
    string = 'fifi'
    substring = 'fi'
    print[string.rfind[substring]]
    # 2
    5 tìm sự xuất hiện đầu tiên của
    string = 'fifi'
    substring = 'fi'
    print[string.rfind[substring]]
    # 2
    6 trong
    string = 'fifi'
    substring = 'fi'
    print[string.rfind[substring]]
    # 2
    7 đã cho
  • Chúng tôi sử dụng mẫu
    string = 'fifi'
    substring = 'fi'
    print[string.rfind[substring]]
    # 2
    8 để tìm lần xuất hiện đầu tiên của chuỗi con mà không có lần xuất hiện nào khác của
    string = 'fifi'
    substring = 'fi'
    print[string.rfind[substring]]
    # 2
    9 theo sau trong chuỗi. Đây là lần xuất hiện cuối cùng của
    string = 'fifi'
    substring = 'fi'
    print[string.rfind[substring]]
    # 2
    9 trong chuỗi
  • Biểu thức
    string = 'hello'
    substring = 'l'
    print[string.rfind[substring]]
    # 3
    
    
    string = 'finxter finxter finxter'
    substring = 'finxter'
    print[string.rfind[substring]]
    # 16
    
    1 được gọi là nhìn trước phủ định và nó đảm bảo rằng mẫu bên trong nó không tuân theo ngay sau đó [khớp không/khớp phủ định]
  • Giá trị trả về của
    string = 'hello'
    substring = 'l'
    print[string.rfind[substring]]
    # 3
    
    
    string = 'finxter finxter finxter'
    substring = 'finxter'
    print[string.rfind[substring]]
    # 16
    
    2 là một đối tượng đối sánh mà chúng ta có thể gọi phương thức
    string = 'hello'
    substring = 'l'
    print[string.rfind[substring]]
    # 3
    
    
    string = 'finxter finxter finxter'
    substring = 'finxter'
    print[string.rfind[substring]]
    # 16
    
    3 để lấy chỉ mục của đối sánh trong bản gốc
    string = 'fifi'
    substring = 'fi'
    print[string.rfind[substring]]
    # 2
    7

Bạn có thể tìm hiểu thêm về phương pháp tìm kiếm regex trong video hướng dẫn này

Python Regex lại. search[] - Hướng dẫn đơn giản với ví dụ


Xem video này trên YouTube

👉 Hướng dẫn đề xuất. Cách tìm chỉ số cao nhất của chuỗi con trong Python

Chris

Trong khi làm việc với tư cách là nhà nghiên cứu về các hệ thống phân tán, Dr. Christian Mayer tìm thấy tình yêu của mình với việc dạy sinh viên khoa học máy tính

Để giúp sinh viên đạt được mức độ thành công Python cao hơn, anh ấy đã thành lập trang web giáo dục lập trình Finxter. com. Ông là tác giả của cuốn sách lập trình nổi tiếng Python One-Liners [NoStarch 2020], đồng tác giả của loạt sách tự xuất bản Coffee Break Python, người đam mê khoa học máy tính, cộng tác viên tự do và chủ sở hữu của một trong 10 blog Python lớn nhất thế giới

Niềm đam mê của anh ấy là viết, đọc và mã hóa. Nhưng niềm đam mê lớn nhất của anh ấy là phục vụ các lập trình viên đầy tham vọng thông qua Finxter và giúp họ nâng cao kỹ năng của mình. Bạn có thể tham gia học viện email miễn phí của anh ấy tại đây

Chỉ số của lần xuất hiện cuối cùng trong Python là gì?

Một giải pháp đơn giản để tìm chỉ mục cuối cùng của một ký tự trong chuỗi là sử dụng hàm rfind[] , trả về chỉ mục của .

Chỉ số của lần xuất hiện cuối cùng là gì?

Phương thức lastIndexOf[] trả về chỉ mục [vị trí] của lần xuất hiện cuối cùng của một giá trị đã chỉ định trong một chuỗi . Phương thức lastIndexOf[] tìm kiếm chuỗi từ cuối đến đầu. Phương thức lastIndexOf[] trả về chỉ mục từ đầu [vị trí 0].

Làm cách nào để tìm chỉ mục cuối cùng của một ký tự trong danh sách bằng Python?

Phương pháp #3. Sử dụng max[] + enumerate[] Chúng tôi sử dụng hàm liệt kê để lấy danh sách tất cả các phần tử có phần tử cụ thể và sau đó max[] được sử dụng để . e chỉ số cuối cùng của danh sách.

Làm cách nào để tìm chỉ mục của lần xuất hiện cuối cùng của chuỗi con trong chuỗi?

Một cách để tìm chỉ mục của lần xuất hiện cuối cùng của chuỗi con là sử dụng phương thức rindex[] từ lớp Chuỗi python sẵn có . Nó chấp nhận một chuỗi đại diện cho chuỗi con được tìm thấy làm tham số và trả về chỉ mục cuối cùng của chuỗi đã cho trong chuỗi hiện tại.

Chủ Đề