LeetCode:709.转换成小写字母——简单

题目:
709.转换成小写字母
实现函数 ToLowerCase(),该函数接收一个字符串参数 str,并将该字符串中的大写字母转换成小写字母,之后返回新的字符串。

示例 1:

输入: "Hello"
输出: "hello"
示例 2:

输入: "here"
输出: "here"
示例 3:

输入: "LOVELY"
输出: "lovely"

解题思路1:
利用Python内置函数lower() 方法转换字符串中所有大写字符为小写。
str.lower()
代码1:

class Solution:
    def toLowerCase(self, str: str) -> str:
        return str.lower()

解题思路2:
利用ASCII码大写字母和小写字母转换相差32。ASCII码表中A-Z对应65-90,a-z对应97-122。
chr() 用一个范围在 range(256)内的(就是0~255)整数作参数,返回一个对应的字符。
ord() 函数是 chr() 函数(对于8位的ASCII字符串)或 unichr() 函数(对于Unicode对象)的配对函数,它以一个字符(长度为1的字符串)作为参数,返回对应的 ASCII 数值,或者 Unicode 数值,如果所给的 Unicode 字符超出了你的 Python 定义范围,则会引发一个 TypeError 的异常。
代码2:

class Solution:
    def toLowerCase(self, str: str) -> str:
        l = []
        for i in str:
            if 65 <= ord(i) <= 90:
                l.append(chr(ord(i) + 32))
            else:
                l.append(i)
        return ''.join(l)

解题思路3:
利用字典键值一一对应,创建一个字典,将26个字母的大小写对应输入,再利用字典的内置函数.get()函数返回指定键的值。
代码3:

class Solution:
    def toLowerCase(self, str: str) -> str:
        dic = {
     
            'A':'a', 'B':'b', 'C':'c', 'D':'d', 'E':'e', 'F':'f',
            'G':'g', 'H':'h', 'I':'i', 'J':'j', 'K':'k', 'L':'l',
            'M':'m', 'N':'n', 'O':'o', 'P':'p', 'Q':'q','R':'r',
            'S':'s', 'T':'t', 'U':'u', 'V':'v', 'W':'w', 'X':'x',
            'Y':'y', 'Z':'z'
        }
        l = []
        for i in str:
            if dic.get(i):
                l.append(dic[i])
            else:
                l.append(i)
        return ''.join(l)

提交记录:
LeetCode:709.转换成小写字母——简单_第1张图片

你可能感兴趣的:(每日一题,python,leetcode,字符串)