如何编写Python函数实现字符串内指定字符按给定次数重复?
Python指定字符重复函数实现方案
核心的字符重复逻辑可以直接利用Python原生的字符串乘法运算符实现:单个字符和正整数相乘,就会返回该字符重复对应次数的新字符串,示例如下:
# 字符重复示例 print('c' * 3) # 输出:ccc
你可以在已有的字符对比逻辑基础上,按如下步骤完善功能:
- 遍历原字符串
origString的每一个字符 - 若字符属于
lettersToRepeat指定字符集,用字符 * repeatCount得到重复后的字符串片段 - 若字符不属于指定字符集,直接保留原字符
- 最后用
str.join()方法把所有处理后的片段拼接为完整字符串返回
完整代码实现
def repeatChar(origString, repeatCount, lettersToRepeat): processed_list = [] for char in origString: # 你已完成的字符对比判断逻辑 if char in lettersToRepeat: # 核心重复逻辑 processed_list.append(char * repeatCount) else: processed_list.append(char) # 拼接得到最终结果 return ''.join(processed_list)
运行测试
>>> repeatChar('cat', 3, 'cr') 'cccat'
如果需要更精简的写法,也可以用生成器表达式实现单行返回:
def repeatChar(origString, repeatCount, lettersToRepeat): return ''.join(char * repeatCount if char in lettersToRepeat else char for char in origString)
内容的提问来源于stack exchange,提问作者Russ Schneider
相关产品推荐
相关产品推荐

