Làm thế nào để bạn so sánh các chuỗi bằng nhau trong python?

Đối với tất cả các đối tượng Python tích hợp [như chuỗi, danh sách, ký tự, hàm, v.v. ], nếu x là y thì x==y cũng đúng

Không phải luôn luôn. NaN là một phản ví dụ. Nhưng thông thường, bản sắc [

str1 = "Python"

str2 = "Python"

str3 = "Java"

print[str1 == str2]

print[str1 == str3]
7] ngụ ý bình đẳng [
str1 = "Python"

str2 = "Python"

str3 = "Java"

print[str1 == str2]

print[str1 == str3]
8]. Chuyện này là không đúng sự thật. Hai đối tượng riêng biệt có thể có cùng giá trị

Ngoài ra, việc chỉ sử dụng '==' theo mặc định có được coi là tốt hơn không, ngay cả khi so sánh các giá trị int hoặc Boolean?

Bạn sử dụng

str1 = "Python"

str2 = "Python"

str3 = "Java"

print[str1 == str2]

print[str1 == str3]
8 khi so sánh giá trị và
str1 = "Python"

str2 = "Python"

str3 = "Java"

print[str1 == str2]

print[str1 == str3]
7 khi so sánh danh tính

Khi so sánh ints [hoặc các loại bất biến nói chung], bạn luôn muốn cái trước. Có một tối ưu hóa cho phép so sánh các số nguyên nhỏ với

str1 = "Python"

str2 = "Python"

str3 = "Java"

print[str1 == str2]

print[str1 == str3]
7, nhưng đừng dựa vào nó

Đối với các giá trị boolean, bạn hoàn toàn không nên so sánh. Thay vì

if x == True:
    # do something

viết

if x:
    # do something

Để so sánh với

str1 = "Python"

str2 = "Python"

str3 = "Java"

print[str1 == str2]

print[str1 == str3]
2,
str1 = "Python"

str2 = "Python"

str3 = "Java"

print[str1 == str2]

print[str1 == str3]
3 được ưu tiên hơn
str1 = "Python"

str2 = "Python"

str3 = "Java"

print[str1 == str2]

print[str1 == str3]
4

Tôi luôn thích sử dụng 'is' bởi vì tôi thấy nó đẹp hơn về mặt thẩm mỹ và phong cách Pythonic [đó là lý do tôi rơi vào cái bẫy này. ], nhưng tôi tự hỏi liệu nó có dự định chỉ được dành riêng khi bạn quan tâm đến việc tìm hai đối tượng có cùng id không

Trong bài viết này, chúng ta sẽ xem xét các cách khác nhau để thực hiện kiểm tra chuỗi bằng trong Python

So sánh chuỗi về cơ bản là so sánh hai chuỗi i. e. nó là thủ tục mà qua đó chúng ta kiểm tra sự bằng nhau của các chuỗi bằng cách so sánh các chuỗi theo từng ký tự

Kỹ thuật 1. Toán tử '==' trong Python để kiểm tra sự bằng nhau của hai chuỗi

Toán tử so sánh Python có thể được sử dụng để so sánh hai chuỗi và kiểm tra sự bằng nhau của chúng trong một

str1 = "Python"

str2 = "Python"

str3 = "Java"

print[str1 == str2]

print[str1 == str3]
7 i. e. chữ hoa và chữ thường sẽ được xử lý khác nhau

Python

str1 = "Python"

str2 = "Python"

str3 = "Java"

print[str1 == str2]

print[str1 == str3]
8 so sánh chuỗi theo cách từng ký tự và trả về True nếu hai chuỗi bằng nhau, ngược lại, nó trả về Sai

cú pháp

string1 == string2

Thí dụ

str1 = "Python"

str2 = "Python"

str3 = "Java"

print[str1 == str2]

print[str1 == str3]

đầu ra

True
False

Kỹ thuật 2. con trăn ‘. =' toán tử để so sánh chuỗi

con trăn ‘. Toán tử =’ cũng có thể được sử dụng để thực hiện kiểm tra chuỗi bằng trong python

The

str1 = "Python"

str2 = "Python"

str3 = "Java"

print[str1 == str2]

print[str1 == str3]
9 so sánh hai chuỗi và trả về True nếu các chuỗi không bằng nhau, ngược lại, nó trả về Sai

cú pháp

________số 8

Thí dụ

str1 = "Python"

str2 = "Python"

str3 = "Java"

if[str1 != str3]:
 print["str1 is not equal to str3"]

if[str1 != str2]:
 print["str1 is not equal to str2"]
else:
 print["str1 is equal to str2"]

đầu ra

if x:
    # do something
0

Kỹ thuật 3. Toán tử 'is' của Python để thực hiện kiểm tra chuỗi bằng trong python

Toán tử "is" trong Python có thể được sử dụng để kiểm tra hiệu quả sự bằng nhau của hai đối tượng chuỗi.

True
False
0 trả về True nếu hai biến trỏ đến cùng một đối tượng dữ liệu, ngược lại, nó trả về False

cú pháp

if x:
    # do something
2

Thí dụ

if x:
    # do something
3

đầu ra

if x:
    # do something
0

Kỹ thuật 4. Hàm __eq__[] để thực hiện kiểm tra chuỗi bằng trong python

Phương thức __eq__[] dựng sẵn trong Python có thể được sử dụng để so sánh hai đối tượng chuỗi. Phương thức ____61 về cơ bản so sánh hai đối tượng và trả về True nếu tìm thấy bằng nhau, nếu không, nó trả về False

cú pháp

if x:
    # do something
6

Thí dụ

str1 = "Python"

str2 = "Python"

str3 = "Java"

print[str1 == str2]

print[str1 == str3]
0

đầu ra

if x:
    # do something
0

Chuỗi bằng kiểm tra trong Python. so sánh không vỏ

str1 = "Python"

str2 = "Python"

str3 = "Java"

print[str1 == str2]

print[str1 == str3]
2

đầu ra

str1 = "Python"

str2 = "Python"

str3 = "Java"

print[str1 == str2]

print[str1 == str3]
3

Như đã thấy trong ví dụ trên, kết quả hóa ra là SAI, vì phép so sánh là

True
False
2

Để có một so sánh chuỗi caseless, tôi. e. theo cách

True
False
3, thì chúng ta có thể sử dụng chuỗi Python. casefold[] chức năng để phục vụ mục đích

Phương thức

True
False
4 chuyển đổi chuỗi thành chữ thường ngay lập tức

Trong kịch bản so sánh chuỗi, chúng ta có thể chuyển cả hai chuỗi đầu vào cho hàm casefold[]. Do đó, cả hai chuỗi sẽ được chuyển đổi thành chữ thường và do đó, chúng ta có thể so sánh không phân biệt chữ hoa chữ thường

cú pháp

str1 = "Python"

str2 = "Python"

str3 = "Java"

print[str1 == str2]

print[str1 == str3]
4

ví dụ 2

str1 = "Python"

str2 = "Python"

str3 = "Java"

print[str1 == str2]

print[str1 == str3]
5

đầu ra

str1 = "Python"

str2 = "Python"

str3 = "Java"

print[str1 == str2]

print[str1 == str3]
6

Sự kết luận

Như vậy, trong bài viết này, chúng ta đã tìm hiểu các kỹ thuật so sánh String có hoa và không có hoa trong Python

Tôi có thể sử dụng == để so sánh các chuỗi trong Python không?

"==" là một phương pháp so sánh chuỗi python để kiểm tra xem cả hai giá trị của toán hạng có bằng nhau hay không . Toán tử này là phương pháp được sử dụng phổ biến nhất để kiểm tra đẳng thức trong python. Toán tử trả về True và False tương ứng.

Bạn có thể sử dụng == để so sánh các chuỗi không?

Bạn không nên sử dụng == [toán tử đẳng thức] để so sánh các chuỗi này vì chúng so sánh tham chiếu của chuỗi, i. e. liệu chúng có phải là cùng một đối tượng hay không. Mặt khác, phương thức equals[] so sánh xem giá trị của các chuỗi có bằng nhau hay không và không phải chính đối tượng.

== so sánh trong Python là gì?

Toán tử == so sánh giá trị hoặc đẳng thức của hai đối tượng , trong khi toán tử is của Python kiểm tra xem hai biến có trỏ đến cùng một đối tượng hay không . Trong phần lớn các trường hợp, điều này có nghĩa là bạn nên sử dụng các toán tử đẳng thức == và. = , trừ khi bạn đang so sánh với Không.

Chủ Đề