题目:
我的解答:
class Solution:
def lengthOfLastWord(self, s: str) -> int:
s=s[::-1]
i=0
length=0
while s[0]==' ':
s=s[1::]
if len(s)==0:
return 0
if len(s)==0:
return 0
else:
for i in s:
if i!=' ':
length+=1
else:
break
return length
因为编写过程中遇到很多error 导致思路有点混乱,自我感觉程序思路不够好,然后,我又去看了下大佬的解答,醍醐灌顶!!
下面是大佬的解答:
class Solution:
def lengthOfLastWord(self, s: str) -> int:
if s.strip().split(' ')[-1]=='':
return 0
else:
return len(s.strip().split(' ')[-1])
这里巧妙地运用.strip()函数和.split()函数,下面对这两个函数做简单的介绍:
1、字符串分割.split()函数:(直接看代码吧)
>>> str = ('www.google.com')
>>> print str
www.google.com
>>> str_split = str.split('.')
>>> print str_split
['www', 'google', 'com']
2、.strip()函数:
s.strip(rm) 删除s字符串中开头、结尾处,位于 rm删除序列的字符
s.lstrip(rm) 删除s字符串中开头处,位于 rm删除序列的字符
s.rstrip(rm) 删除s字符串中结尾处,位于 rm删除序列的字符
下面是代码示例:
>>> a = ' 123'
>>> a
' 123'
>>> a.strip()
'123'