小文:今天面試又搞砸了? 小 k:怎麼了? 小文:又一個大小寫轉換的題目感覺答錯了。 小 k:說來聽聽。 小文:將"hello world"轉換為首字母大寫"Hello World" 小 k:你的答案是什麼? 小文:用 capitalize 方法啊。 小 k:capitalize 方法只能將第一個單 ...
小文:今天面試又搞砸了?
小 k:怎麼了?
小文:又一個大小寫轉換的題目感覺答錯了。
小 k:說來聽聽。
小文:將"hello world"轉換為首字母大寫"Hello World"
小 k:你的答案是什麼?
小文:用 capitalize 方法啊。
小 k:capitalize 方法只能將第一個單詞的首字母大寫,你這題目要求是兩個單詞的首字母都要大寫。
小文:剛運行了下代碼,還真是這樣,有什麼辦法嗎?
小 k:有兩個方法可解,一種簡單,一種複雜,你聽那種?
小文:簡單的吧
小 k:那我先講複雜的。思路是把字元串切割成兩個元素的列表,一個元素就是一個單詞。
arr = "hello world".split(" ")
把 arr 列印出來的結果是列表:['hello', 'world']
再把列表裡的元素首字母都轉換為大寫。
arr[0].capitalize()
arr[1].capitalize()
再用連接符拼接起來,中間加上空格。
new_str = arr[0].capitalize() + ' ' + arr[1].capitalize()
這樣就把兩個單詞的首字母都大寫了。
小文:那簡單的方法呢?
小 k:用 title() 方法搞定。
"hello world".title()
小文:就這麼簡單?
小 k:是的,我們來看看 title() 方法的說明。
def title(self): # real signature unknown; restored from __doc__
"""
S.title() -> str
Return a titlecased version of S, i.e. words start with title case
characters, all remaining cased characters have lower case.
"""
return ""
翻譯一下,以標題的形式返回字元串,即字元串單詞首字母大寫,其餘字元串小寫。
是不是很簡單。
小文:學到了,下次面試考這個再也不怕了。