寫程式的人對 split()、join() 兩個東西肯定不陌生,在 Python 裡面我們可以透過 String.join(list) 把 List 合併成字串,例如 “,”.join([“A”, “B”, “C”]) 會回傳 “A,B,C” 字串,或是反過來透過 “A,B,C”.split(“,”) 來拆成 List,但你一定有過這樣的需求卻無法解決吧:
- 把字串合併但首字大寫
- List 裡面存的是數字,但 join 需要是字串才可以處理
這些問題可以透過 List Comprehension 解決,例如型態處理的部份可以像這樣撰寫語法:
nums = [1,2,3,4,5] nums_str = [str(num) for num in nums] print(",".join(nums_str))
但除了 List Comprehension 以外還有其他解法嗎? 你肯定也想過像 sort 那樣傳送 lambda function 給 join 吧!