1.題目描述
實現函數 ToLowerCase(),該函數接收一個字符串參數 str,並將該字符串中的大寫字母轉換成小寫字母,之後返回新的字符串。
示例 1:
輸入: "Hello"
輸出: "hello"
示例 2:
輸入: "here"
輸出: "here"
示例 3:
輸入: "LOVELY"
輸出: "lovely"
來源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/to-lower-case
2.python實現
這是以前C語言編程的最最基礎的入門題,通過判斷ASCII值是否在大寫“A”-“Z”【65,90】之間,如果在就把它的ASCII+32變到‘a’-‘z’【97,122】
下面是python思路
字符轉ASCII:ord(str)
ASCII轉字符:chr(ASCII)
代碼如下:
class Solution(object):
def toLowerCase(self, str):
"""
:type str: str
:rtype: str
"""
re_str=''
for elem in str:
if ord(elem) in range(65,91):
re_str += chr(ord(elem)+32)
else:
re_str += elem
return re_str
當然呢,你也可以使用python字符串內置函數,一行出結果:
class Solution(object):
def toLowerCase(self, str):
"""
:type str: str
:rtype: str
"""
return str.lower()
3.實現過程遇到的問題及知識點補充
- ASCII值大寫“A”-“Z”【65,90】,ASCII值‘a’-‘z’【97,122】
- ord(str)
- chr(ASCII)
- 字符串不可以以索引下標的方式去賦值改變字符串,報錯“unicode object does not support item assignment”“str object does not support item assignment”
也就是不能寫str[i]=c
- python字符串大小寫轉換相關內置函數
-
str = "test" print(str.upper()) # 把所有字符中的小寫字母轉換成大寫字母 print(str.lower()) # 把所有字符中的大寫字母轉換成小寫字母 print(str.capitalize()) # 把第一個字母轉化爲大寫字母,其餘小寫 print(str.title()) # 把每個單詞的第一個字母轉化爲大寫,其餘小寫