计算字符串最后一个单词的长度,单词以空格隔开。(Python)

字符串最后一个单词的长度

http://www.nowcoder.com/questionTerminal/8c949ea5f36f422594b306a2300315da

输入的字符串有以下三种情况:
1)一个单词:
如:
"Hello"
这种直接输出其长度就可以。
2)末尾单词没有标点:
如:
"hello world"
用Python特有的负数访问,返回空格的索引,末尾单词的长度就是返回值的相反数加一。
3)末尾单词带有标点:
如:
"Hello world !"
从索引为-3的位置开始访问,置其为-1,和第二种一样返回索引,长度也是返回值的相反数加一。
具体代码如下:

def reindex(str) :     #定义函数用于返回索引
    for i in range(-1,-(len(str) + 1),-1) :   #逆序遍历
        if str[i] == ' ' :
            return i 
str = input().strip()
if str.isalpha():     #第一种情况
    print(len(str))
elif str[-1].isalpha():   #第二种情况
    index = reindex(str)
    print(-(index + 1))
else :                    #第三种情况
    index = reindex(str[:len(str) - 2])
    print(-(index + 1))

如有不足之处欢迎指正。

全部评论
可以直接以空格分割字符串然后list一下pop ()列表中最后有个元素,然后len这个元素,可以吗?
点赞 回复 分享
发布于 2021-04-17 09:26
如果输入纯数字的话 应当返回0 但程序返回的不是0
点赞 回复 分享
发布于 2021-07-27 23:55
如果最后一个单词是'test'这种左右各有一个引号的话,好像还是没能规避
点赞 回复 分享
发布于 2021-08-28 10:46
请问在Python里面写的时候是不是得导入pandas库
点赞 回复 分享
发布于 2022-03-24 22:48
第三种方式的切片不应该终值是字符串长度-1吗
点赞 回复 分享
发布于 2022-06-22 22:52

相关推荐

孤寡孤寡的牛牛很热情:为什么我2本9硕投了很多,都是简历或者挂,难道那个恶心人的测评真的得认真做吗
点赞 评论 收藏
分享
20 收藏 评论
分享
牛客网
牛客企业服务