描述
计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于
5000
。(注:字符串末尾不以空格为结尾)
输入描述:
输入一行,代表要计算的字符串,非空,长度小于
5000
。
输出描述:
输出一个整数,表示输入字符串最后一个单词的长度。
示例1
输入:
hello nowcoder
输出:
8
说明:
最后一个单词为
nowcoder
,长度为
8
注意: 牛客网中,所有参数的输入会自动进行,所以我们只需要使用
input()
来获取就好了。
方法一:
解题思路:
- 将字符串整个翻转
- 从第一个字母开始读取(字符串末尾不以空格为结尾)
- 读到空格位置结束(因为字符串中的所有单词是用空格进行分割的)
这样就获取到了字符串最后一个单词的长度。
代码如下:
a = input()
num = 0
for i in reversed(a):
if i != " ":
num += 1
else:
break
print(num)
方法二:
解题思路:
- 将字符串用
函数分开成列表数据split()
- 使用索引值
访问列表中的最后一个字符串。[-1]
- 使用len()函数读取列表最后一个字符串的长度。
这样就获取到了字符串最后一个单词的长度。
a = "hello nowcoder"
print(len(a.split(" ")[-1]))
如上所示,我们使用了
split(" ")
函数来分割字符串,因为题目中设定了字符串末尾不以空格为结尾。那么对于一般情况,如果字符转末尾以空格为结尾该怎么办呢?这里可以将方法二优化为通用方法:
方法三:(推荐,通用解法)
a = "hello nowcoder"
print(len(a.split()[-1]))