Python 字串的大小寫變換 map()

2021-08-21 09:45:14 字數 2049 閱讀 2188

假設使用者輸入的英文名字不規範,沒有按照首字母大寫,後續字母小寫的規則,請利用map()函式,把乙個list(包含若干不規範的英文名字)變成乙個包含規範英文名字的list:

輸入:['adam', 'lisa', 'bart']

輸出:['adam', 'lisa', 'bart']

def format_name(s):

return s.capitalize()

print map(format_name, ['adam', 'lisa', 'bart'])

>>>
['adam', 'lisa', 'bart']
map()是 python 內建的高階函式,它接收乙個函式 f 和乙個 list,並通過把函式 f 依次作用在 list 的每個元素上,得到乙個新的 list 並返回。

例如,對於list [1, 2, 3, 4, 5, 6, 7, 8, 9]

如果希望把list的每個元素都作平方,就可以用map()函式:

因此,我們只需要傳入函式f(x)=x*x,就可以利用map()函式完成這個計算:

def f(x):

return x*x

print map(f, [1, 2, 3, 4, 5, 6, 7, 8, 9])

輸出結果:

[1, 4, 9, 10, 25, 36, 49, 64, 81]
注意:map()函式不改變原有的 list,而是返回乙個新的 list。

利用map()函式,可以把乙個 list 轉換為另乙個 list,只需要傳入轉換函式。

由於list包含的元素可以是任何型別,因此,map() 不僅僅可以處理只包含數值的 list,事實上它

可以處理包含任意型別的 list

,只要傳入的函式f可以處理這種資料型別。

1

'''2

lower()、upper()、capitalize()、title()、swapcase()

3這幾個方法分別用來將字串轉換為小寫、大寫字串、將字串首字母變為大寫、將每個首字母變為大寫以及大小寫互換,

4這幾個方法都是生成新字串,並不對原字串做任何修改

5'''

6 s='

what is your name?

'7 s2=s.lower()

8print(s2) #

返回小寫字串9#

what iss your name?

10print(s.upper()) #

返回大寫字串11#

what is your name?

12print(s.capitalize()) #

字串首字元大寫13#

what is your name?

14print(s.title()) #

每個單詞的首字母大寫15#

what is your name?

16print(s.swapcase()) #

大小寫互換17#

what is your name?

1819

'''20

replace()

21用來替換字串中指定字元或子字串的所有重複出現,每次只能替換乙個字元或字串,類似於word、wps、記事本等文字

22編輯器的查詢與替換功能。該方法並不修改原字串,而是返回乙個新字串。

23'''

24 s1='

中國,中國'25

print

(s1)26#

中國,中國

27print(s1.replace('

中國','

泰國曼谷'))

28#泰國曼谷,泰國曼谷

29print('

abcdabc

'.replace('

abc','

abc'

))30

#abcdabc

Python 字串的大小寫變換

1 2 lower upper capitalize title swapcase 3這幾個方法分別用來將字串轉換為小寫 大寫字串 將字串首字母變為大寫 將每個首字母變為大寫以及大小寫互換,4這幾個方法都是生成新字串,並不對原字串做任何修改 5 6 s what is your name?7 s2 ...

Python字串字母大小寫變換

說明 接下來簡單說明下關於字串大小寫的變換。操作 這幾個方法都是生成新的字串,不對原字串內容進行修改。demo this is a good book.print demo.casefold print demo.lower print demo.upper print demo.capitaliz...

Python 字串大小寫轉換

filename test.py author by www.runoob.com str www.runoob.com print str.upper 把所有字元中的小寫字母轉換成大寫字母 print str.lower 把所有字元中的大寫字母轉換成小寫字母 print str.capitaliz...