Trong bài viết này, chúng ta sẽ tìm hiểu những gì là các chuỗi trong ngôn ngữ lập trình, cách tạo chúng và sử dụng của chúng. Hơn nữa, chúng tôi sẽ nghiên cứu các nhà khai thác khác nhau để so sánh các chuỗi trong Python. Cuối cùng, chúng tôi sẽ nghiên cứu một số so sánh chuỗi Python cùng với ví dụ và đầu ra mã Python của nó. Vậy hãy bắt đầu!
Chuỗi là gì?
Một chuỗi nói chung là một chuỗi các ký tự. Một nhân vật là một biểu tượng đơn giản. Ví dụ, trong ngôn ngữ tiếng Anh, chúng tôi có sẵn 26 ký tự. Hệ thống máy tính không hiểu các ký tự và do đó, do đó, đối phó với các số nhị phân. Mặc dù chúng ta có thể thấy các ký tự trên màn hình màn hình của mình, nhưng bên trong nó được lưu trữ và thao tác như là sự kết hợp của 0 và 1. Việc chuyển đổi các ký tự và số nhị phân được gọi là mã hóa và mặt trái của điều này được gọi là giải mã. & NBSP; Một số mã hóa phổ biến là ASCII và Unicode. Trong ngôn ngữ lập trình Python, một chuỗi là một chuỗi các ký tự Unicode.
Toán tử so sánh chuỗi Python
Trong ngôn ngữ Python, chúng ta có thể so sánh hai chuỗi như xác định xem hai chuỗi có tương đương với nhau hay không, hoặc thậm chí chuỗi nào lớn hơn hay nhỏ hơn nhau. Hãy để chúng tôi kiểm tra một số toán tử so sánh chuỗi được sử dụng cho mục đích này bên dưới:
- ==: Toán tử này kiểm tra xem hai chuỗi có bằng nhau không.: This operator checks whether two strings are equal.
- ! =: Toán tử này kiểm tra xem hai chuỗi không bằng nhau.This operator checks whether two strings are not equal.
- =: Toán tử này kiểm tra xem chuỗi ở phía bên trái có lớn hơn chuỗi ở phía bên phải hay không.This operator checks whether the string on the left side is greater than the string on the right side.
Chuỗi bằng kiểm tra trong Python
Trong chương trình Python, chúng ta có thể kiểm tra xem các chuỗi có bằng hay không sử dụng hàm ==, hay bằng cách sử dụng chức năng .__ EQ__ EQ__.
Example:
s1 = 'String' s2 = 'String' s3 = 'string' # case sensitive equals check if s1 == s2: print['s1 and s2 are equal.'] if s1.__eq__[s2]: print['s1 and s2 are equal.']
Ở đây, chúng tôi kiểm tra chuỗi S1 và S2 cho dù chúng có bằng hay không, sau đó sử dụng câu lệnh IF IF có điều kiện với sự kết hợp của toán tử bằng nhau.
Đầu ra của mã trên như được đưa ra dưới đây:
& nbsp; s1 và s2 bằng nhau.
& nbsp; s1 và s2 bằng nhau.
Điều gì về trường hợp so sánh không nhạy cảm?
Trong khi kiểm tra sự bình đẳng trong chuỗi đôi khi chúng ta muốn bỏ qua trường hợp của chuỗi trong khi so sánh. Vì vậy, như một giải pháp cho vấn đề này, chúng ta có thể sử dụng hàm case fold [], thấp hơn [] hoặc trên [] để bỏ qua trường hợp so sánh không nhạy cảm của bình đẳng chuỗi.
s1 = 'String' s2 = 'String' s3 = 'string' if s1.casefold[] == s3.casefold[]: print[s1.casefold[]] print[s3.casefold[]] print['s1 and s3 are equal in case-insensitive comparison'] if s1.lower[] == s3.lower[]: print[s1.lower[]] print[s3.lower[]] print['s1 and s3 are equal in case-insensitive comparison'] if s1.upper[] == s3.upper[]: print[s1.upper[]] print[s3.upper[]] print['s1 and s3 are equal in case-insensitive comparison']
Đầu ra của mã trên như được đưa ra dưới đây:
string
string
& nbsp; s1 và s2 bằng nhau.
string
string
& nbsp; s1 và s2 bằng nhau.
STRING
STRING
& nbsp; s1 và s2 bằng nhau.
Điều gì về trường hợp so sánh không nhạy cảm?
Trong khi kiểm tra sự bình đẳng trong chuỗi đôi khi chúng ta muốn bỏ qua trường hợp của chuỗi trong khi so sánh. Vì vậy, như một giải pháp cho vấn đề này, chúng ta có thể sử dụng hàm case fold [], thấp hơn [] hoặc trên [] để bỏ qua trường hợp so sánh không nhạy cảm của bình đẳng chuỗi.
Khi chế tạo logic trong mã của bạn, bạn có thể muốn thực thi các lệnh khác nhau tùy thuộc vào sự tương đồng hoặc khác biệt giữa hai hoặc nhiều chuỗi. Trong bài viết này, chúng ta sẽ thấy các nhà khai thác khác nhau có thể giúp chúng ta kiểm tra xem các chuỗi có bằng hay không. Nếu hai chuỗi bằng nhau, giá trị được trả về sẽ là Trong phần này, chúng ta sẽ thấy các ví dụ về cách chúng ta có thể so sánh các chuỗi bằng một vài toán tử. Nhưng trước đó, bạn cần phải có những điều sau đây trong tâm trí: Toán tử True
. Nếu không, nó sẽ trở lại ____10.Cách so sánh các chuỗi bằng toán tử
s1 = 'String'
s2 = 'String'
s3 = 'string'
if s1.casefold[] == s3.casefold[]:
print[s1.casefold[]]
print[s3.casefold[]]
print['s1 and s3 are equal in case-insensitive comparison']
if s1.lower[] == s3.lower[]:
print[s1.lower[]]
print[s3.lower[]]
print['s1 and s3 are equal in case-insensitive comparison']
if s1.upper[] == s3.upper[]:
print[s1.upper[]]
print[s3.upper[]]
print['s1 and s3 are equal in case-insensitive comparison']
1s1 = 'String'
s2 = 'String'
s3 = 'string'
if s1.casefold[] == s3.casefold[]:
print[s1.casefold[]]
print[s3.casefold[]]
print['s1 and s3 are equal in case-insensitive comparison']
if s1.lower[] == s3.lower[]:
print[s1.lower[]]
print[s3.lower[]]
print['s1 and s3 are equal in case-insensitive comparison']
if s1.upper[] == s3.upper[]:
print[s1.upper[]]
print[s3.upper[]]
print['s1 and s3 are equal in case-insensitive comparison']
1 kiểm tra xem hai chuỗi bằng nhau. Đây là một ví dụ:
print["Hello" == "Hello"]
# True
Chúng tôi có giá trị True
được trả về vì cả hai chuỗi trên đều bằng nhau.
Chúng ta hãy làm cho nó trông lạ mắt hơn một chút khi sử dụng một số logic có điều kiện:
string1 = "Hello"
string2 = "Hello"
if string1 == string2:
print["Both strings are equal"]
else:
print["Both strings are not equal"]
# Both strings are equal
Trong mã trên, chúng tôi đã tạo hai chuỗi và lưu trữ chúng theo các biến. Sau đó chúng tôi so sánh các giá trị của họ. Nếu các giá trị này giống nhau, chúng tôi sẽ nhận được một tin nhắn được in vào bảng điều khiển và nếu chúng không giống nhau, chúng tôi sẽ có một tin nhắn khác được in.
Cả hai chuỗi trong trường hợp của chúng tôi đều bằng nhau, vì vậy chúng tôi có "cả hai chuỗi đều bằng nhau". Nếu chúng tôi thay đổi chuỗi đầu tiên thành "Xin chào", thì chúng tôi sẽ có một thông báo khác.
Lưu ý rằng việc sử dụng
s1 = 'String' s2 = 'String' s3 = 'string' if s1.casefold[] == s3.casefold[]: print[s1.casefold[]] print[s3.casefold[]] print['s1 and s3 are equal in case-insensitive comparison'] if s1.lower[] == s3.lower[]: print[s1.lower[]] print[s3.lower[]] print['s1 and s3 are equal in case-insensitive comparison'] if s1.upper[] == s3.upper[]: print[s1.upper[]] print[s3.upper[]] print['s1 and s3 are equal in case-insensitive comparison']4 sẽ khiến trình thông dịch giả định rằng bạn muốn gán một giá trị này cho một giá trị khác. Vì vậy, hãy chắc chắn rằng bạn sử dụng
s1 = 'String' s2 = 'String' s3 = 'string' if s1.casefold[] == s3.casefold[]: print[s1.casefold[]] print[s3.casefold[]] print['s1 and s3 are equal in case-insensitive comparison'] if s1.lower[] == s3.lower[]: print[s1.lower[]] print[s3.lower[]] print['s1 and s3 are equal in case-insensitive comparison'] if s1.upper[] == s3.upper[]: print[s1.upper[]] print[s3.upper[]] print['s1 and s3 are equal in case-insensitive comparison']1 để so sánh.
Cách so sánh các chuỗi bằng toán tử s1 = 'String'
s2 = 'String'
s3 = 'string'
if s1.casefold[] == s3.casefold[]:
print[s1.casefold[]]
print[s3.casefold[]]
print['s1 and s3 are equal in case-insensitive comparison']
if s1.lower[] == s3.lower[]:
print[s1.lower[]]
print[s3.lower[]]
print['s1 and s3 are equal in case-insensitive comparison']
if s1.upper[] == s3.upper[]:
print[s1.upper[]]
print[s3.upper[]]
print['s1 and s3 are equal in case-insensitive comparison']
6
Toán tử
s1 = 'String' s2 = 'String' s3 = 'string' if s1.casefold[] == s3.casefold[]: print[s1.casefold[]] print[s3.casefold[]] print['s1 and s3 are equal in case-insensitive comparison'] if s1.lower[] == s3.lower[]: print[s1.lower[]] print[s3.lower[]] print['s1 and s3 are equal in case-insensitive comparison'] if s1.upper[] == s3.upper[]: print[s1.upper[]] print[s3.upper[]] print['s1 and s3 are equal in case-insensitive comparison']6 kiểm tra xem hai chuỗi không bằng nhau.not equal.
string1 = "Hello"
string2 = "Hello"
if string1 != string2:
print["Both strings are not equal"] # return if true
else:
print["Both strings are equal"] # return if false
# Both strings are equal
Chúng tôi đang sử dụng cùng một ví dụ nhưng với một toán tử khác.
s1 = 'String' s2 = 'String' s3 = 'string' if s1.casefold[] == s3.casefold[]: print[s1.casefold[]] print[s3.casefold[]] print['s1 and s3 are equal in case-insensitive comparison'] if s1.lower[] == s3.lower[]: print[s1.lower[]] print[s3.lower[]] print['s1 and s3 are equal in case-insensitive comparison'] if s1.upper[] == s3.upper[]: print[s1.upper[]] print[s3.upper[]] print['s1 and s3 are equal in case-insensitive comparison']6 đang nói rằng các chuỗi không bằng
s1 = 'String' s2 = 'String' s3 = 'string' if s1.casefold[] == s3.casefold[]: print[s1.casefold[]] print[s3.casefold[]] print['s1 and s3 are equal in case-insensitive comparison'] if s1.lower[] == s3.lower[]: print[s1.lower[]] print[s3.lower[]] print['s1 and s3 are equal in case-insensitive comparison'] if s1.upper[] == s3.upper[]: print[s1.upper[]] print[s3.upper[]] print['s1 and s3 are equal in case-insensitive comparison']0 vì vậy một thông điệp được in dựa trên các điều kiện đó.
Tôi đã nhận xét mã để giúp bạn hiểu rõ hơn.
Cách so sánh các chuỗi bằng toán tử print["Hello" == "Hello"]
# True
0
print["Hello" == "Hello"]
# True
Toán tử
print["Hello" == "Hello"]
# True
0 kiểm tra xem một chuỗi nhỏ hơn chuỗi kia.print["Hello" < "hello"]
# True
Điều này trả về True
vì mặc dù mọi chỉ số ký tự khác trong cả hai chuỗi đều bằng nhau, H có giá trị nhỏ hơn [ASCII] so với H.H has a smaller [ASCII] value than h .
Chúng tôi cũng có thể sử dụng các câu lệnh có điều kiện ở đây như chúng tôi đã làm trong các phần trước.
Cách so sánh các chuỗi bằng toán tử print["Hello" == "Hello"]
# True
3
print["Hello" == "Hello"]
# True
Toán tử
print["Hello" == "Hello"]
# True
3 kiểm tra xem một chuỗi nhỏ hơn hoặc bằng chuỗi khác.print["Hello" "Hello"]
# False
Vì chuỗi bên trái không lớn hơn mức bên phải, chúng tôi đã trả lại cho chúng tôi.
Cách so sánh các chuỗi bằng toán tử string1 = "Hello"
string2 = "Hello"
if string1 == string2:
print["Both strings are equal"]
else:
print["Both strings are not equal"]
# Both strings are equal
0
string1 = "Hello"
string2 = "Hello"
if string1 == string2:
print["Both strings are equal"]
else:
print["Both strings are not equal"]
# Both strings are equal
Toán tử
string1 = "Hello"
string2 = "Hello"
if string1 == string2:
print["Both strings are equal"]
else:
print["Both strings are not equal"]
# Both strings are equal
0 kiểm tra xem một chuỗi lớn hơn hoặc bằng chuỗi khác.print["Hello" >= "Hello"]
# True
Vì một trong cả hai điều kiện của toán tử là đúng [cả hai chuỗi đều bằng nhau], chúng tôi có giá trị True
.
Sự kết luận
Trong bài viết này, chúng tôi đã tìm hiểu về các nhà khai thác khác nhau mà bạn có thể sử dụng khi kiểm tra sự bình đẳng của các chuỗi trong Python với các ví dụ. Chúng tôi cũng thấy làm thế nào độ nhạy của trường hợp có thể thay đổi sự bình đẳng của chuỗi.
Mã hóa hạnh phúc!
Học mã miễn phí. Chương trình giảng dạy nguồn mở của Freecodecamp đã giúp hơn 40.000 người có được việc làm với tư cách là nhà phát triển. Bắt đầu