如何加倍字符串中的字符?

时间:2014-03-24 09:55:03

标签: python-2.7

我正在尝试编写一个带有两个参数的函数,一个字符串和一个字母。然后该函数应该使字符串中的字母数加倍。例如:

double_letters("Happy", "p")
Happppy

到目前为止我做了什么;

def double_letter(strng, letter):
 new_word = ""
    for char in strng:
        if char == letter:
            pos = strng.index(char)
            new_word = letter+strng[pos:]

但是这给了我输出:pppy

如何更改函数以获取输出:Happppy?

2 个答案:

答案 0 :(得分:1)

使用string.replace

string = 'happy'
letter = 'p'
string = string.replace(letter, letter + letter)
print string

答案 1 :(得分:1)

您可以使用join并遍历字符串中的字符:

def double_letters(word, letter):
    return "".join(2*i if i == letter else i for i in word)