2024-06-16 08:23:21 发布
网友
我被困在这条线上:
row[1].upper().find('CELEBREX',1)(返回-1)
row[1].upper().find('CELEBREX',1)
-1
它似乎找不到西乐葆,即使它在那里
row[1] = 'celebrex, TRAMADOL'
我是不是投错了?在
find()的第二个参数不应该是1,因为它将在字符串的第一个字符之后开始搜索。在
1
>>> s = 'celebrex, TRAMADOL' >>> print s.upper().find('CELEBREX') 0
Find()将返回0,因为它在字符串的第一个位置0找到了第一个匹配项。因此需要注意的是,正如您已经发现的那样,if find()没有找到字符串,它将返回-1。返回值0实际上是匹配的。在
0
您将从第二个字母1开始搜索,即e:
row=("",'celebrex, TRAMADOL') print row[1].upper().find('CELEBREX',1) print row[1][1:] """Output: -1 elebrex, TRAMADOL """
upper()看起来不错,但find不好。您希望在字符串的开头(而不是偏移量)进行查找。在
upper()
row[1].upper().find('CELEBREX')
find()的第二个参数不应该是
1
,因为它将在字符串的第一个字符之后开始搜索。在Find()将返回0,因为它在字符串的第一个位置
0
找到了第一个匹配项。因此需要注意的是,正如您已经发现的那样,if find()没有找到字符串,它将返回-1。返回值0实际上是匹配的。在您将从第二个字母1开始搜索,即e:
upper()
看起来不错,但find不好。您希望在字符串的开头(而不是偏移量)进行查找。在相关问题 更多 >
编程相关推荐