Python字符串_运算符in与字符串比较

一,运算符in

in这个词在字符串操作中是一个布尔操作符,它读取两个字符串,如果前者的字符串为后者所包含,就返回真,否则为假,看例子:

>>> 'a' in 'banana'

True

>>> 'app' in 'banana'

False

定义一个函数,显示所有同时在 word1和 word2当中出现的字母:

$ cat b.py

#!/bin/python

def in_both(word1, word2):

    for letter in word1:

        if letter in word2:

           print(letter)

       return 'over'     #可以不定义返回参数

print (in_both('orange', 'apples'))

$ python3 b.py

a

e

None     #默认返回None,其他时候看不到是因为没有print,如果出现print并且没有设置return的参数,就会打印出来None。

二,字符串的比较

关系运算符对于字符串来说也可用。比如可以看看两个字符串是不是相等:

$ cat c.py

#!/bin/python

word = 'banana'

if word == 'banana':

   print('all ringt, bananas')  

$ python3 c.py

all ringt, bananas

其他的关系运算符> <可以按照ASCII值的大小来比较字符串的大小:

$ cat c.py

word = 'jack'            #定义word为jack

if word < 'banana':

   print('your word, ' + word + ', comes before banana.')

elif word > 'banana':

   print('Your word, ' + word + ', comes after banana.')

else:

   print('All right, bananas.')

$ python3 c.py

Your word, jack, comes after banana.

$ cat c.py

#!/bin/python

word = 'app'        #定义word为app

if word < 'banana':

   print('your word, ' + word + ', comes before banana.')

elif word > 'banana':

   print('Your word, ' + word + ', comes after banana.')

else:

   print('All right, bananas.')

$ python3 c.py

your word, app, comes before banana.

ASCII码顺序的比较规则是,从第一个字符开始,顺次向后直到出现不同的字符为止,然后以第一个不同的字符的ASCII值确定。

例如上面的"jack"和"banana",第一个字母就不相同,j的ASCII值比b的ASCII值大,所以这二个字符串的比较结果是"jack" > "banana"。所以打印Your word, jack, comes after banana.

"app"与"banana"比较,a的ASCII值比b的ASCII值大,所以字符串"app"  >  "banana"。所以打印your word, app, comes before banana.

结束。

 

posted @ 2020-06-21 10:20  巴州夜雨  阅读(5218)  评论(0编辑  收藏  举报