Hướng dẫn how do you check the content of a string in python? - làm thế nào để bạn kiểm tra nội dung của một chuỗi trong python?

Kiểm tra xem chuỗi có chứa chất nền trong Python không

Kiểm tra xem một chuỗi có chứa chuỗi con có phải là một trong những tác vụ phổ biến nhất trong bất kỳ ngôn ngữ lập trình nào. Python cung cấp nhiều cách để kiểm tra xem một chuỗi có chứa chuỗi con không. Cách đơn giản và nhanh nhất để kiểm tra xem một chuỗi có chứa chuỗi con hay không trong Python có sử dụng toán tử "trong" hay không, được sử dụng làm toán tử so sánh. Một số phương thức Python khác như Find [], Index [], Count [], v.v. cũng giúp kiểm tra xem một chuỗi có chứa chuỗi con không.contains a substring is one of the most common tasks in any programming language. Python offers many ways to check if a string contains a substring. The simplest and fastest way to check whether a string contains a substring or not in Python is using the "in" operator , which is used as a comparison operator . Some other Python methods such as find[], index[], count[] etc. also help to Check if a string contains a substring.

Sử dụng toán tử "In" của Python

Cách đơn giản và nhanh nhất để kiểm tra xem một chuỗi có chứa chuỗi con hay không trong Python là toán tử "trong". Toán tử này trả về true nếu chuỗi chứa các ký tự, nếu không, nó sẽ trả về sai.fastest way to check whether a string contains a substring or not in Python is the "in" operator . This operator returns true if the string contains the characters, otherwise, it returns false .

đầu ra

Toán tử Python "In" có hai đối số, một ở bên trái và một bên phải và trả về true nếu chuỗi đối số bên trái được chứa trong chuỗi đối số bên phải."in" operator takes two arguments, one on the left and one on the right, and returns True if the left argument string is contained within the right argument string.

Thêm về toán tử "In"

Lưu ý: Toán tử "In" là trường hợp nhạy cảm, nó sẽ xử lý các ký tự chữ hoa và các ký tự thường khác nhau.case sensitive i.e, it will treat the Uppercase characters and Lowercase characters differently.

__contains __ [] hàm

Lớp Chuỗi Python có phương thức __Contains __ [] mà chúng ta có thể sử dụng để kiểm tra xem nó có chứa chuỗi khác hay không. Khi chúng ta sử dụng Python "trong" toán tử, bên trong, nó gọi __Contains __ [] hàm. Phương thức __contains__ định nghĩa cách thức hoạt động của lớp khi chúng xuất hiện ở phía bên phải của in và không trong toán tử. Chúng ta cũng có thể sử dụng chức năng này trực tiếp, nhưng đừng. Các phương pháp bắt đầu với dấu gạch dưới được coi là riêng tư về mặt ngữ nghĩa, tuy nhiên bạn nên sử dụng trong nhà điều hành cho mục đích đọc.__contains__[] method that we can use to check if it contains another string or not. When we use Python "in" operator , internally it calls __contains__[] function. The __contains__ method defines how instances of class behave when they appear at right side of in and not in operator. We can use this function directly too, but don't . Methods that start with underscores are considered semantically private , however it's recommended to use in operator for readability purposes.

Sử dụng phương thức str.find [] của Python

Một phương thức khác bạn có thể sử dụng là phương thức chuỗi.find []. Phương thức Find [] đánh giá nếu chuỗi chứa một chuỗi con. Nếu có, phương thức Find [] trả về chỉ số bắt đầu của một chuỗi con trong chuỗi nếu không nó sẽ trả về -1.string.find[] method . The find[] method evaluate if the string contains a substring . If it does, the find[] method returns the starting index of a substring within the string otherwise it returns -1 .

đầu ra

Toán tử Python "In" có hai đối số, một ở bên trái và một bên phải và trả về true nếu chuỗi đối số bên trái được chứa trong chuỗi đối số bên phải.

Thêm về toán tử "In"str.find[] method is the less Pythonic way , but it's still accepted. It's longer and a little bit more confusing, but it still gets the job done.

Lưu ý: Toán tử "In" là trường hợp nhạy cảm, nó sẽ xử lý các ký tự chữ hoa và các ký tự thường khác nhau.

__contains __ [] hàmpattern matching . Python has a built-in package called re , which can be used to work with Regular Expressions . The re module contains a function called search[] , it can be used to check if a string contains the specified search pattern .

Lớp Chuỗi Python có phương thức __Contains __ [] mà chúng ta có thể sử dụng để kiểm tra xem nó có chứa chuỗi khác hay không. Khi chúng ta sử dụng Python "trong" toán tử, bên trong, nó gọi __Contains __ [] hàm. Phương thức __contains__ định nghĩa cách thức hoạt động của lớp khi chúng xuất hiện ở phía bên phải của in và không trong toán tử. Chúng ta cũng có thể sử dụng chức năng này trực tiếp, nhưng đừng. Các phương pháp bắt đầu với dấu gạch dưới được coi là riêng tư về mặt ngữ nghĩa, tuy nhiên bạn nên sử dụng trong nhà điều hành cho mục đích đọc.

đầu ra

Toán tử Python "In" có hai đối số, một ở bên trái và một bên phải và trả về true nếu chuỗi đối số bên trái được chứa trong chuỗi đối số bên phải.

Thêm về toán tử "In"number of occurrences of a specific substring in a string, then you can use Python count[] method . If the substring is not found in a string, the function returns 0 .


Trong hướng dẫn này, chúng ta sẽ xem cách kiểm tra xem một chuỗi có chứa một chuỗi con trong Python không. Như thường lệ, mỗi cách tiếp cận chúng tôi sẽ đề cập có những ưu và nhược điểm khác nhau.

Các nhà điều hành trong

Cách dễ nhất để kiểm tra xem chuỗi Python có chứa chất nền là sử dụng toán tử in không.

Toán tử in được sử dụng để kiểm tra các cấu trúc dữ liệu để thành viên trong Python. Nó trả về một boolean [hoặc True hoặc False]. Để kiểm tra xem một chuỗi có chứa chuỗi con trong Python bằng toán tử in hay không, chúng tôi chỉ cần gọi nó trên SuperString:

fullstring = "StackAbuse"
substring = "tack"

if substring in fullstring:
    print["Found!"]
else:
    print["Not found!"]

Toán tử này là tốc ký để gọi phương thức

TypeError: argument of type 'NoneType' is not iterable
1 của đối tượng và cũng hoạt động tốt để kiểm tra xem một mục có tồn tại trong danh sách không. Điều đáng chú ý là nó không an toàn, vì vậy nếu
TypeError: argument of type 'NoneType' is not iterable
2 của chúng tôi chỉ vào
TypeError: argument of type 'NoneType' is not iterable
3, một ngoại lệ sẽ bị ném:

TypeError: argument of type 'NoneType' is not iterable

Để tránh điều này, trước tiên bạn sẽ muốn kiểm tra xem nó có chỉ vào

TypeError: argument of type 'NoneType' is not iterable
3 hay không:

fullstring = None
substring = "tack"

if fullstring != None and substring in fullstring:
    print["Found!"]
else:
    print["Not found!"]

Phương thức chuỗi.index []

Loại chuỗi trong Python có một phương thức gọi là

TypeError: argument of type 'NoneType' is not iterable
5 có thể được sử dụng để tìm chỉ số bắt đầu của lần xuất hiện đầu tiên của chuỗi con trong chuỗi.

Kiểm tra hướng dẫn thực hành của chúng tôi, thực tế để học Git, với các thực hành tốt nhất, các tiêu chuẩn được công nghiệp chấp nhận và bao gồm bảng gian lận. Ngừng các lệnh git googling và thực sự tìm hiểu nó!

Nếu không tìm thấy chất nền, ngoại lệ

TypeError: argument of type 'NoneType' is not iterable
6 được ném, có thể được xử lý với khối Expet-Offce-Else:

fullstring = "StackAbuse"
substring = "tack"

try:
    fullstring.index[substring]
except ValueError:
    print["Not found!"]
else:
    print["Found!"]

Phương pháp này rất hữu ích nếu bạn cần biết vị trí của chuỗi con, trái ngược với sự tồn tại của nó trong toàn bộ chuỗi.

Phương thức chuỗi.find []

Loại chuỗi có một phương thức khác được gọi là

TypeError: argument of type 'NoneType' is not iterable
7 thuận tiện hơn để sử dụng so với
TypeError: argument of type 'NoneType' is not iterable
5, vì chúng tôi không cần phải lo lắng về việc xử lý bất kỳ ngoại lệ nào.

Nếu

TypeError: argument of type 'NoneType' is not iterable
9 không tìm thấy một trận đấu, nó sẽ trả về -1, nếu không, nó sẽ trả về chỉ số bên trái nhất của chuỗi con trong chuỗi lớn hơn.

fullstring = "StackAbuse"
substring = "tack"

if fullstring.find[substring] != -1:
    print["Found!"]
else:
    print["Not found!"]

Nếu bạn muốn tránh cần phải bắt lỗi, thì phương pháp này sẽ được ưu tiên hơn

TypeError: argument of type 'NoneType' is not iterable
5.

Biểu thức thông thường [Regex]

Biểu thức chính quy cung cấp một cách linh hoạt hơn [mặc dù phức tạp hơn] để kiểm tra các chuỗi để khớp mẫu. Python được vận chuyển với một mô-đun tích hợp cho các biểu thức thông thường, được gọi là

fullstring = None
substring = "tack"

if fullstring != None and substring in fullstring:
    print["Found!"]
else:
    print["Not found!"]
1. Mô -đun
fullstring = None
substring = "tack"

if fullstring != None and substring in fullstring:
    print["Found!"]
else:
    print["Not found!"]
1 chứa một hàm gọi là
fullstring = None
substring = "tack"

if fullstring != None and substring in fullstring:
    print["Found!"]
else:
    print["Not found!"]
3, chúng ta có thể sử dụng để phù hợp với mẫu con:

from re import search

fullstring = "StackAbuse"
substring = "tack"

if search[substring, fullstring]:
    print "Found!"
else:
    print "Not found!"

Phương pháp này là tốt nhất nếu bạn cần một chức năng phù hợp phức tạp hơn, như phù hợp với trường hợp không nhạy cảm. Nếu không, nên tránh tốc độ biến chứng và tốc độ chậm hơn cho các trường hợp sử dụng phù hợp với chất nền đơn giản.

Bài viết này được viết bởi Jacob Stopak, một nhà tư vấn và nhà phát triển phần mềm với niềm đam mê giúp đỡ người khác cải thiện cuộc sống của họ thông qua mã.Jacob là người tạo ra cam kết ban đầu - một trang web dành riêng để giúp các nhà phát triển tò mò tìm hiểu cách các chương trình yêu thích của họ được mã hóa.Dự án nổi bật của nó giúp mọi người học Git ở cấp độ mã.

Bài Viết Liên Quan

Chủ Đề