文本比较¶
在本例中,让我们看看如何比较以字符串数组表示的文本片段。
比较字符串是否相等¶
使用关系运算符 == 和 != 可以比较字符串数组是否相等。比较字符串数组时,输出是一个布尔数组,其中 1(true)表示关系为真,0(false)表示关系为假。
In [ ]:
str1 = "Hello";
str2 = "World";
str1,str2
Out[0]:
In [ ]:
str1 != str2
Out[0]:
In [ ]:
str1 = ["Mercury" "Gemini" "Apollo";"Skylab" "Skylab B" "International Space Station"];
str2 = "Apollo";
str1 .== str2
Out[0]:
In [ ]:
str2 = ["Mercury" "Mars" "Apollo";"Jupiter" "Saturn" "Neptune"];
str1 .!= str2
Out[0]:
使用其他关系运算符比较字符串¶
您还可以使用 >、>=、< 和 <= 关系运算符比较字符串。以大写字母开头的字符串优先于以小写字母开头的字符串。例如,字符串 "ABC "小于 "abc"。数字和一些标点符号也在字母之前。
In [ ]:
"ABC" < "abc"
Out[0]:
使用 > 运算符比较包含姓名的字符串数组与另一个姓名。桑切斯、德庞蒂和纳什的名字排在马修斯之后,因为 S、d 和 N 都大于 M。
In [ ]:
str = ["Sanchez","Jones","de Ponte","Crosby","Nash"];
TF = (str .> "Matthews")
Out[0]:
还有一个函数cmp()
可以比较两个字符串。如果两个字符串相等,则返回 0;如果第一个字符串参数大于第二个字符串参数,则返回 1;如果第一个字符串参数小于第二个字符串参数,则返回-1。
In [ ]:
cmp("ABC","abc")
Out[0]: