Python String Equals: casefoldUse the equals operator on strings. Specify casefold and lower in a string comparison.
Strings can be compared for exact equality with two equals signs. With this syntax, the characters (and their cases) are compared. If not equal, the test returns false.Strings
Here we test strings for equality. We have several string literals in the program. We use two equals to check character data.
Casefold: Newer versions of Python support the casefold method. Similar to lower(), it handles Unicode characters better.
Lower: We can also use the lower method to standardize the casing of strings in our programs.
Python program that tests string equality
value = "CAT"
if value == "cat":
print("A") # Not reached.
if value == "CAT":
if str.casefold(value) == "cat":
if str.lower(value) == "cat":
Equals, not equals. With the equals operator, the characters of two strings are compared. It does not matter if they are different object instances.
Python program that uses equals, not equals
location1 = "forest"
location2 = "FOREST".lower()
# These two strings are equal.
if location1 == location2:
# These two strings are not equal.
if location1 != "desert":
print("Not in desert")
Not in desert
Some notes, performance. It is fastest to avoid creating temporary strings (as with the lower method) before testing equality. Usually, avoiding allocations helps performance.
A review. We can use the equals and not-equals operators to compare two strings. Often we do this in an if-statement, but the expression can be used in any part of a program.
© 2007-2020 Sam Allen. Every person is special and unique. Send bug reports to firstname.lastname@example.org.