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()) # 把每个单词的第一个字母转化为大写,其余小写