如何用Python实现元音开头单词的首尾字母编码?求助
用Python切片实现元音开头单词的编码处理
核心思路
遍历句子中的每个单词:
- 若单词首字母属于元音(含大小写
a,e,i,o,u,A,E,I,O,U),则用首字母+尾字母替换原单词 - 非元音开头的单词直接保留
Python的字符串切片刚好能便捷获取首/尾字符:
word[0]:取字符串第一个字符word[-1]:取字符串最后一个字符(不管单词长度,无需计算索引)
完整代码实现
# 定义包含大小写的元音集合 vowels = {'a', 'e', 'i', 'o', 'u', 'A', 'E', 'I', 'O', 'U'} original_sentence = 'Iterator to iterate on each character of the input string' # 按空格拆分句子为单词列表 words = original_sentence.split() processed_words = [] for word in words: # 判断首字母是否为元音 if word[0] in vowels: # 切片取首+尾字符拼接 processed_word = word[0] + word[-1] processed_words.append(processed_word) else: processed_words.append(word) # 拼接处理后的单词为句子 result = ' '.join(processed_words) print(result) # 输出:Ir to ie on eh character of the it string
关键点说明
- 大小写兼容:元音集合包含大小写,确保像
Iterator(大写I开头)这类单词能被正确识别 - 切片的灵活性:
word[-1]是Python特有的反向索引,无需关心单词长度,直接取最后一个字符,完美适配所有长度≥1的合法单词 - 边界情况处理:如果遇到单字符元音单词(比如
"a"),处理后仍为"a",符合逻辑
内容的提问来源于stack exchange,提问作者malladi rocky
相关产品推荐
相关产品推荐

