给你一个字符串 s,由若干单词组成,单词之间用空格隔开。返回字符串中最后一个单词的长度。如果不存在最后一个单词,请返回 0 。
单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。
class Solution:
def lengthOfLastWord(self, s: str) -> int:
if not s:
return 0
s=s.strip()
mid = s.split(' ')
return len(mid[-1])
首先思路分两种情况,分为字符串为空或者字符串不为空的情况。
字符串为空时:直接用not s判断是否为空,判断成功就返回0
字符串不为空时,初期想法是直接用split()函数分割字符串中的空格变为列表形式后,只需要返回字符串中最后一个字符长度即可。
但是一直在输入“a”时出错,经过查看发现输入的a的后面带有一个空格“a ”,这样的话空格即为最后一个字符,即长度为0。所以需要我们在判断时将前后空格去掉(主要去掉后面空格)在进行运算。
str.rstrip() 消除末尾空格
str.lstrip() 消除开头空格
str.strip() 消除开头和末尾的空格