每日一题 2023.08.29 转换成小写字母

给你一个字符串 s ,将该字符串中的大写字母转换成相同的小写字母,返回新的字符串。

示例 1:

输入:s = “Hello”
输出:“hello”
示例 2:

输入:s = “here”
输出:“here”
示例 3:

输入:s = “LOVELY”
输出:“lovely”

题解:
首先想到的就是python自带的字符串大小写转换方法:

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

还有一种比较繁琐的写法:

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'}
        s = []
        for i in str:
            if dic.get(i):
                s.append(dic[i])
            else:
                s.append(i)
        return ''.join(s)

思路就是将大小写写成字典,再遍历入参字符串的元素,做转换,再拼接,就是有点耗内存

知识点:‘A’ - ‘Z’ 对应的 ascii 是 65 - 90;
‘a’ - ‘z’ 对应的 ascii 是 97 - 122;
大小字母转换相差32

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值