天天看點

01---字元串最後一個單詞的長度

描述

計算字元串最後一個單詞的長度,單詞以空格隔開,字元串長度小于​

​5000​

​。(注:字元串末尾不以空格為結尾)

輸入描述:

輸入一行,代表要計算的字元串,非空,長度小于​

​5000​

​。

輸出描述:

輸出一個整數,表示輸入字元串最後一個單詞的長度。

示例1

輸入:

hello nowcoder      

輸出:

8      

說明:

最後一個單詞為​​

​nowcoder​

​​,長度為​

​8​

注意: 牛客網中,所有參數的輸入會自動進行,是以我們隻需要使用​

​input()​

​來擷取就好了。

方法一:

解題思路:

  1. 将字元串整個翻轉
  2. 從第一個字母開始讀取(字元串末尾不以空格為結尾)
  3. 讀到空格位置結束(因為字元串中的所有單詞是用空格進行分割的)

這樣就擷取到了字元串最後一個單詞的長度。

代碼如下:

a = input()
num = 0
for i in reversed(a):
    if i != " ":
        num += 1
    else:
        break
print(num)      

方法二:

解題思路:

  1. 将字元串用​

    ​split()​

    ​函數分開成清單資料
  2. 使用索引值​

    ​[-1]​

    ​通路清單中的最後一個字元串。
  3. 使用len()函數讀取清單最後一個字元串的長度。

這樣就擷取到了字元串最後一個單詞的長度。

a = "hello nowcoder"
print(len(a.split(" ")[-1]))      

如上所示,我們使用了​

​split(" ")​

​函數來分割字元串,因為題目中設定了字元串末尾不以空格為結尾。那麼對于一般情況,如果字元轉末尾以空格為結尾該怎麼辦呢?這裡可以将方法二優化為通用方法:

方法三:(推薦,通用解法)

a = "hello nowcoder"
print(len(a.split()[-1]))