题目在这:https://leetcode-cn.com/problems/length-of-last-word/
法一:
思路分析:
最直观的方法就是按照空格进行切割,找到最后一个单词,返回他的长度就可以了。
有一种情况需要注意,就是如果给的字符串是 一堆空格的情况,这时候使用len()函数,不会返回0
print(len(" ")) # 三个空格
输出:3
所以我使用了 strip()方法去掉了空格。
ps:
strip() 方法 只能删除开头结尾的特定字符(默认空格),中间字符无法操作。
完整代码:
if len(s.strip()) == 0:
return 0
else:
return len(s.split()[-1])
# 使用split方法进行分割,返回最后一个字符长度
法二:
思路分析:
我们可以直接倒着遍历字符串,遇到空格就结束,遍历的次数就是最后一个单词的长度。
range()函数的使用:
常用的两种:
range(stop)
range(start, stop[, step])
完整代码:
s = s.strip()
res = 0
for i in range(len(s) - 1, -1, -1):
if s[i] == ' ':
break
else:
res += 1
print(res)