簡體   English   中英

使用python替換字符串中字符的所有實例

[英]Replacing all instances of a character in a string using python

嘗試用新字符替換字符串中給定字符的所有實例。 以下是我的代碼:

def main():
    s='IS GOING GO'
    x='I'
    y='a'

   rep_chr(s,x,y)


def find_chr(s,char):
    i=0
    for ch in s:
        if ch==char:
            return (i)
            break        
        i+=1
    return -1
def rep_ch(s,x,y):
    result=""

    for char in s:

        if char == x:
            print(result=result+ y )        
        else:
            return char   
main()

編輯了代碼,但仍將第一個“ I”替換為“ a”,而忽略了第二個“ I”。 有什么建議嗎?

for i in range(s1):

此處s1是一個字符串,您將其傳遞給range函數,該函數只希望數字作為參數。 那就是問題所在。 您應該使用字符串的長度來代替

for i in range(len(s1)):

但是,您的實際問題可以通過str.replace來解決,就像這樣

s='IS GOING GO'
x='I'
y='a'
print(s.replace(x, y))

如果您想在沒有str.replace情況下進行求解,則可以這樣做

s, result, x, y ='IS GOING GO', "", "I", "a"
for char in s:
    if char == x:
        result += y
    else:
        result += char
print(result)

輸出量

aS GOaNG GO

同樣的程序也可以這樣寫

s, result, x, y ='IS GOING GO', "", "I", "a"
for char in s:
    result += y if char == x else char
print(result)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM