709. 转换成小写字母-Python

本文介绍了两种在Python中实现字符串大小写转换的方法:一是直接使用内置的lower()函数;二是手动编码实现,通过ASCII码转换大写字母为小写。

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

 

示例 1:

输入: "Hello"
输出: "hello"

示例 2:

输入: "here"
输出: "here"

示例 3:

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

python3代码:

1、直接使用str的lower()函数

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

2、自己编码解决,不利用现成函数

class Solution:
    def toLowerCase(self, str: str) -> str:
        s=""
        for i in str:
            if 'A'<=i<='Z':
                i=chr(ord(i)+32)
            s=s+i
        return s

与C\C++等不同的是,Python字符不能直接与数字比较

要利用ord()函数将字符转换为ASCII数字,再与数字比较

用chr()函数再将数字转换为字符,拼接在字符串里

### Python 编程实现英文句子到摩尔斯电码的转换 以下是基于用户需求设计的一个 Python 函数,用于将输入的英文句子转换为摩尔斯电码。该函数能够识别并保留非字母字符不变,同时支持大小写自动处理。 ```python def convert_to_morse(sentence): """ 将输入的英文句子转换为摩尔斯电码。 参数: sentence (str): 输入的英文句子 返回: str: 转换后的摩尔斯电码字符串 """ # 定义摩尔斯电码字典 morse_code_dict = { 'a': ".-", 'b': "-...", 'c': "-.-.", 'd': "-..", 'e': ".", 'f': "..-.", 'g': "--.", 'h': "....", 'i': "..", 'j': ".---", 'k': "-.-", 'l': ".-..", 'm': "--", 'n': "-.", 'o': "---", 'p': ".--.", 'q': "--.-", 'r': ".-.", 's': "...", 't': "-", 'u': "..-", 'v': "...-", 'w': ".--", 'x': "-..-", 'y': "-.--", 'z': "--.." # 只包含小写字母的映射关系 } # 结果存储列表 result = [] # 遍历输入句子中的每一个字符 for char in sentence: if char.isalpha(): # 如果当前字符是字母 lower_char = char.lower() # 转换为小写 if lower_char in morse_code_dict: # 查找对应摩尔斯电码 result.append(morse_code_dict[lower_char]) # 添加到结果中 else: result.append(char) # 若无匹配项则保持原样 elif char == ' ': # 如果为空格,则用斜杠代替作为单词分隔符 result.append('/') else: result.append(char) # 非字母字符保持不变 # 使用空格连接所有摩尔斯电码片段并返回 return ' '.join(result) # 测试代码 if __name__ == "__main__": test_sentence = "Attack on Pearl Harbor" converted_morse = convert_to_morse(test_sentence) print(converted_morse) ``` #### 功能解释 1. **摩尔斯电码字典定义** 字典 `morse_code_dict` 存储了从英文字母到其对应的摩尔斯电码的映射关系[^1]。 2. **遍历输入字符串** 对于输入字符串中的每个字符,如果它是字母,则将其转换为小写后查找相应的摩尔斯电码;如果是其他字符(如标点符号或数字),则直接添加至结果列表[^2]。 3. **单词间的分隔** 英文句子中的空格被替换为 `/` 符号,以便在输出的摩尔斯电码中区分不同单词[^1]。 4. **最终结果生成** 所有找到的摩尔斯电码片段通过空格连接起来形成最终的结果字符串[^2]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值