在 Python 中大寫字串的首字母
-
在 Python 中使用
capitalize()
方法大寫字串的第一個字母 -
在 Python 中使用
title()
方法大寫字串的第一個字母 -
在 Python 中使用
capwords()
函式大寫字串的第一個字母 -
在 Python 中使用
regex
方法將字串的第一個字母大寫 - 在 Python 中使用使用者定義的方法將字串的第一個字母大寫
本文將討論在 Python 中大寫字串的第一個字母的方法。我們還將討論當字串的開頭是數字而不是字母時的情況。
在 Python 中使用 capitalize()
方法大寫字串的第一個字母
字串類的 capitalize()
方法將第一個字元大寫,而其餘字元則為小寫。如果第一個字元已經是大寫的,它不會做任何事情。
完整的示例程式碼在下面給出。
string="learn Python"
cap_string= string.capitalize()
print("The capitalized string is:", cap_string)
輸出:
The capitalized string is: Learn python
如果字串中的第一個字元是數字,它不會將第一個字母大寫。為了解決這個問題,我們可以使用 isdigit()
函式。
下面給出了使用 isdigit()
函式的完整示例程式碼。
string="5learn python"
for i, c in enumerate(string):
if not c.isdigit():
break
cap_string=string[:i] + string[i:].capitalize()
print("The capitalized string is:", cap_string)
輸出:
The capitalized string is: 5Learn python
enumerate()
函式提供一個字串的可迭代計數器,並返回其列舉物件。isdigit()
檢查該字元是否為數字。當遇到第一個非數字字元時,它就會中斷 for
迴圈。
string[:i]
是前幾位數字的子字串,string[i:].capitalize()
將剩餘字串的第一個字母轉換為大寫。
在 Python 中使用 title()
方法大寫字串的第一個字母
title()
方法可以使每個單詞的標題字串大寫。這意味著每個單詞的第一個字元被轉換為大寫,其餘單詞字元被轉換為小寫。
完整的示例程式碼如下:
string="learn python"
cap_string= string.title()
print("The capitalized string is:", cap_string)
輸出:
The capitalized string is: Learn Python
不管單詞開頭是否存在數字,此函式都會將字串中每個單詞的首字母大寫。
在 Python 中使用 capwords()
函式大寫字串的第一個字母
它是 string
模組的功能。它將字串拆成單詞,並在每個單詞大寫後使用指定的分隔符將它們重新連線起來。預設的分隔符是空格。
完整的示例程式碼如下:
import string
strng="learn python"
cap_strng= string.capwords(strng)
print("The capitalized string is:", cap_strng)
輸出:
The capitalized string is: Learn Python
在 Python 中使用 regex
方法將字串的第一個字母大寫
這個方法也會將字串中每個單詞的第一個字母大寫,而其餘的字元都是小寫。
完整的示例程式碼如下:
import re
string="learn python"
string = re.sub('([a-zA-Z])', lambda x: x.groups()[0].upper(), string, 1)
print("The capitalized string is:",string)
輸出:
The capitalized string is: Learn python
Python 的正規表示式模組的 sub()
函式將給定字串中的字串模式 [a-zA-Z]
(小寫或大寫字母)用 lambda 函式的返回值替換。
lambda x: x.groups()[0].upper()
將正規表示式中第一個匹配的組(本例中的第一個字母)轉換為大寫字母。x
是這裡的匹配物件。
我們需要將第一個字母大寫,因此,re.sub()
函式中的 count
設定為 1,以便僅進行一次替換。
在 Python 中使用使用者定義的方法將字串的第一個字母大寫
我們也可以做一個使用者自定義的函式來大寫字串的第一個字母。我們將找到第一個字母的索引 i
,並將 upper()
方法應用到子串 string[:i]
中。即使存在前導數字,它也會大寫字串的第一個字母。
完整的示例程式碼如下。
def check_alphabets(strng):
i = 0
for c in strng:
if c.isalpha():
i = i + 1
return i
i = i + 1
def unchanged_characters(strng):
i = check_alphabets(strng)
return strng[:i].upper() + strng[i:]
strng = '0learn1python'
cap_string = unchanged_characters(strng)
print("The capitalized string is:", cap_string)
輸出:
The capitalized string is: 0Learn1python